www.example.com
www.example.com/page
www.example.com/index.php?p=page
ルール:/そうを追加するために必要な
RewriteEngine On
RewriteRule ^([^/]*)$ /index.php?p=$1 [L]
www.example.com
www.example.com/page
www.example.com/index.php?p=page
ルール:/そうを追加するために必要な
RewriteEngine On
RewriteRule ^([^/]*)$ /index.php?p=$1 [L]
:
RewriteEngine On
RewriteRule ^/([^/]*)$ /index.php?p=$1 [L]
' .htaccess'で 'RewriteRule'の先頭にスラッシュを追加します。 _pattern_は問題を「修正」しません。エラーが消えるだけです。これで何も起こらないからです。 – MrWhite
RewriteRule ^([^/]*)$ /index.php?p=$1 [L]
これはリライトループ(したがって、あなたの500エラー)になります。書き換えループを防止する1つの方法は、書き換えようとする前にURLにp
というURLパラメータが含まれていないことを確認することです。例:
RewriteCond %{QUERY_STRING} !^p=
RewriteRule ^([^/]*)$ /index.php?p=$1 [L]
サーバーのエラーログを確認します。エラーの原因がそこにあります。 'mod_rewrite'ディレクティブを使用するために必要なオーバーライド(つまり、' FileInfo')がない可能性があります。(実際には 'mod_rewrite'は有効になっていません) – Phil