※ ChatGPTを利用し、要約された質問です(原文:初.htaccess設定。答え合わせお願いします)
初めて.htaccessを設定する際のポイントとは?
このQ&Aのポイント
初めて.htaccessを設定する際に注意すべきポイントや設定の書き方について教えてください。
URL正規化やページの転送など、.htaccessで行える設定についても教えてください。
.htaccessの設定命令の書き方や順序についても教えてください。
趣味でWEBサイトを作って公開しています。
サイトを作り直したのでアップしたいのですが、.htaccessで転送設定したほうがよいと知りました。
恥ずかしながら旧サイトで何もしておらず、URLの正規化など転送以外にしたほうがいい設定も合わせてやってみたいです。
これでアップしていいか、教えてくださる方おられましたらご指導お願いしたいです。
【やりたいこと】
・URL正規化
・各旧ページから各新ページへの転送
・TOPのindexをURLに表示しない
※使用しているサーバはロリポップです。
【作成した.htaccess】----------------------
#www無しのURLに統一
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.サイトURL\.com
RewriteRule ^(.*) http://サイトURL.com/$1 [R=301,L]
#各ページ旧URLから新URLへの転送(中間にあるディレクトリをなくした)
RewriteEngine on
RewriteRule ^http://サイトURL.com/旧ディレクトリA/旧ページ1.html$ http://サイトURL.com/新ページa.html [R=301,L]
RewriteRule ^http://サイトURL.com/旧ディレクトリA/旧ページ2.html$ http://サイトURL.com/新ページb.html [R=301,L]
RewriteRule ^http://サイトURL.com/旧ディレクトリB/旧ページ1.html$ http://サイトURL.com/新ページc.html [R=301,L]
RewriteRule ^http://サイトURL.com/旧ディレクトリB/旧ページ2.html$ http://サイトURL.com/新ページd.html [R=301,L]
・・・各ページ分用意
#index.php無しのURLに統一
RewriteEngine On
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://サイトURL.com/$1 [R=301,L]
【作成したhtaccessここまで】----------------------
<Q1>「RewriteEngine On」は、冒頭に1度書けば良いのでしょうか?それとも命令1つごとに必要なのでしょうか。
<Q2>3番め(#indexなしにする)について、
旧ページはindex.htmlですが新ページはindex.phpになりました。
その場合の書き方もこれで合っていますか?
2番めの転送設定でindex.html→index.phpにしておけばこれでいいのかなと思っているのですが・・・
<Q3>1番目~3番目の各命令を書く順序は合っていますか?
上から順に読み込むのか、そもそもどの順で書いても関係ないのでしょうか。
全くの初心者なので質問の仕方もわかりにくいかと思いますが、
教えてくださる方いらっしゃいましたらよろしくお願いいたします。
お礼
ご回答ありがとうございます! 勉強になりました。 見本もご教示いただき感謝です。 これでアップしてみます!