[ASP.NET] 301リダイレクト

windowsレンタルサーバを使用している際に、xxx.htmの301リダイレクトを行う方法の開発備忘録です。

やりたいことは、当初はxxx.htmをトップに据えていた。その後、xxx.aspxをトップに据えた。
そのため、xxx.htmにきたアクセスを301リダイレクトでxxx.aspxへ飛ばすというものです。

xxx.aspxならサーバ側でリダイレクトしてあげれば済みますが、htmファイルではそうできないので
どうしたらいいかという話です。

試して居ないのですが、gloval.asax内に書くこともできると思いますが、スマートでない気がするので、、、
また、web.configを書き換えて実行するには、HTTリダイレクト機能がサーバにインストールされて居ないといけません。
レンタルサーバでは、インストールされていない可能性が有りますので注意が必要です。
えっと、私の使用中のレンタルサーバもインストールされていないようです。

参考までに、Web.configを書き換える方法も載せますが、未検証です。
 HTTP リダイレクトは、IIS 7.0 の既定のインストールには含まれていません。インストールするには、次の手順を実行します
 参考URL:マイクロソフトライブラリ

   <system.webServer>
    <httpRedirect enabled="true" httpResponseStatus="Permanent">
      <add wildcard="xxx.htm" destination="xxx.aspx"/>
    </httpRedirect>
  </system.webServer>

私の環境ではweb.configの設定方法が使用できないので、
で、その他の方法をググりました。

xxx.htmを作成し対応する

<head>
<meta http-equiv="refresh" content="0; URL=http://seo.itsysgroup.com/index.aspx" />
<title></title>
</head>

302リダイレクトになっていますが、meta refreshの場合は、(一応)、0秒等で転送すると301に準じるように解釈されるようです。・・・そうでない場合もあるそうですが・・・、一応これで対応できているようです。。。