- ベストアンサー
URLの正規化がうまくできません。
只今、URLの正規化を行っておりまして、「www有り無し」はhtaccessを使用し、うまくいったのですが「index.html有り無し」が何度やってもうまくいきません。 そこで、自分のサイト内のリンクを全て、相対パスから絶対URLへと修正したのですが、まだ正規化ができてません・・・現在サイトは50ページぐらいのものなので見逃してはないと思うのですがもしどこかに相対パスが残っているのであれば、それを調べる方法はあるのでしょうか? また、他に原因がある可能性があるのでしょうか? この件で3日程、悩んでおります。 是非、どなたかお答え頂けましたら助かります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です(お礼/補足拝見済み) なんでコピペで間違うんだろう?・・・ RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.○○○\.jp RewriteRule ^(.*) http://○○○.jp/$1 [R=301,L] RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ http://○○○.jp/$1 [R=301,L] 最終行は改行。 タイムラグが発生する事もある。 Options +FollowSymLinksが必要か不要か? そもそもindex.htmlなの?って話・・・ 下層にも.htaccessがあるとか・・・
その他の回答 (1)
- naokita
- ベストアンサー率57% (1008/1745)
301リダイレクトに関しては、 相対パスだろうが、絶対パスだろうが無関係です。 .htaccessの内容が間違っていると思う。説明よりソースを書けばよいのに・・・ 見逃しは、テキストエディタなどで、 index.html を検索すれば良い。 .htaccessのindex正規化に関しては、先日も同じような回答をしましたが、 http://okwave.jp/qa/q7939079.html
お礼
早急のご回答ありがとうございます。 ご返信遅くなりました。 http://oshiete.goo.ne.jp/qa/7939079.html コチラの内容をもとに、再度挑戦してみます。 naokita様 有難う御座いました。
補足
やはりうまくいきません。 naokita様のご指摘通りソースを記載致しますので間違いがありましたら教えて頂ければ助かります。 下記コードでwww無しの統一は出来ているのですが・・・ RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.○○○\.jp RewriteRule (.*) http://○○○/$1 [R=301,L] RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$http://○○○/$1 [R=301,L] ご指導の程、宜しくお願い致します。
お礼
naokita 様 naokita 様のソースで解決致しました!! 本当に助かりました。 有難う御座います。