.htaccessについて考えてみる
先日書いた.htaccessを使ってアドレスを統一する方法を考えてみました。
マルチドメイン等、複数のURLがある場合、やはり一つにまとめたくなります。
コミックルームは
http://comic-r.net/
http://www.comic-r.net/
http://comic.sakura.ne.jp/
http://www.comic.sakura.ne.jp/
のどれでも、アクセスできます。サイト開設時にリンク先を http://comic-r.net/ に指定。
それで困ったのが、www があってもなくてもアクセスできてしまう状態。
コチラのサイトを参考にすれば、.htaccessを使い
アドレスを一つにまとめる(転送)ことができますが、私の使っているサーバー
「さくらインターネット」では、mod_rewriteが使えません。そこで、色々調べた結果
.htaccessを使い「特定のドメインでしか、アクセスできない」状態にすることができるようです。
SetEnvIf Host "www\.comic-r\.net" hos_ok上記のように書けば、http://www.comic-r.net/にしかアクセスできません。http://comic.sakura.ne.jp/は、表示されなくなりました・・・http://comic-r.net/も表示されなくなります。私のサイトはhttp://comic-r.net/で統一したいので・・・困るわけです。
order deny,allow
deny from all
allow from env=hos_ok
一行目をSetEnvIf Host "comic-r\.net" hos_ok にするとwwwのあるなし両方でアクセスできてしまう。困った。
んで、思ったのが極端な話、逆の発想でwwwを含んでいるとアクセスできない状態にすればよいのでは?
と思い.htaccessに以下のように記述してみました。
SetEnvIf Host "www" hos_uaうん、とりあえずこれでwww付きではアクセスできなくなりました。
order allow,deny
allow from all
deny from env=hos_ua
http://www.comic.sakura.ne.jp/では、アクセスできてしまうわけだが・・・ま、いいでしょう。
[適当な素人解説]
SetEnvIf Host "www" hos_uaは、wwwを含んだhos(ポスト)を拒否(ua)すること。
order allow,denyは、allow(受け入れ)をdeny(拒否)より優先する。
allow from allは、all(全て)受け入れる。
deny from env=hos_uaは、一行目で指定したwwwは拒否する。
う~ん、正直ここまでする必要があるのか?っとお思いの方が沢山いらっしゃるでしょね。
私的には、やはり統一してスッキリしたいわけです(汗
他にもっといい方法があるような気がしますけど・・・
投稿者 comicroom : 2004年11月21日 15:34 : コミックルーム : 編集
前後の記事
↑ .htaccessについて考えてみる
→ .htaccessについて考えてみる
↓ レビュー用CGI
トラックバック
このエントリーのトラックバックURL:
http://comic-r.net/mt/mt-tb.cgi/36