1

次の URL を書き換えたい:

http://www.mywebsite.com/helloworld/

http://www.mywebsite.com/index.php?page=hellworld

この次のルールは、その仕事を行うのに適しています。

RewriteRule ^(.*)/$ index.php?page=$1

しかし、問題があります:

私が行ったとき: http://www.mywebsite.com/helloworld(末尾のスラッシュ (/) が存在しないことを確認してください) そのルールは機能しません。しかし、使用http://www.mywebsite.com/helloworld/するとうまくいきます。

¿これを解決するにはどうすればよいですか?

4

2 に答える 2

3

を追加?

RewriteRule ^(.*)/?$ index.php?page=$1
于 2013-02-13T20:27:41.963 に答える
0

一貫性を保つために、スラッシュを強制する方がよい場合があります。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)/$ index.php?page=$1
RewriteRule ^(.*)([^/])$ http://%{HTTP_HOST}/$1$2/ [L,R=301]

基本的に、URLがファイル(!-f)でない場合は、次のルールが実行されます。末尾にスラッシュがある場合は、目的の場所に移動し、同じURLにリダイレクトされない場合は末尾のスラッシュは、ルールをもう一度繰り返して、意図した場所に移動すると思います。

于 2013-02-13T20:34:57.640 に答える