質問: mod書き換えルールの質問/ヘルプ .htaccessファイルには、基本的にphpページを書き換えてサブフォルダーとして表示する次のルールセットがあります。たとえば、http://www.mysite.co.uk/about-me/はhttp://www.mysite.co.uk/about.phpを指します。options +followsymlinks rewriteengine on rewritecond %{http_host} !^www.mysite.co.uk$ [nc] rewriterule ^(.*)$ http://www.mysite.co.uk/$1 [r=301,nc,l] rewritecond %{request_filename} !-f rewritecond %{request_filename} !-d rewritecond %{request_uri} !(\.[a-za-z0-9]{1,5}|/)$ rewriterule ^index.php$ /welcome-to-my-website/ [l,r=301,nc] rewriterule ^welcome-to-my-website/$ index.php [nc,l] rewriterule ^about-me/$ about.php [nc,l] rewriterule ^my-portfolio/$ portfolio.php [nc,l] rewriterule ^contact-us/$ contact.php [nc,l] 私がやりたいのは、ルートを自動的に転送/リダイレクトすることです- http://www.mysite.co.uk/ -とindex.phpコンテンツが重複しないように、htaccess経由で/ welcome-to-my-website /に直接アクセスします。どのようにこれを達成することができますか?
回答: 次の3つのrewritecondsは必要ないので、削除できます。rewritecond %{request_filename} !-f rewritecond %{request_filename} !-d rewritecond %{request_uri} !(\.[a-za-z0-9]{1,5}|/)$ ルートとindex.phpを/ welcome-to-my-website /にリダイレクトするには、これを使用できます:rewriterule ^(|index\.php)$ http://www.mysite.co.uk/welcome-to-my-website/ [l,r=301]