1

http://www.mywebsite.com/cd2012/index.php?legal=1ではなくhttp://www.mywebsite.com/cd2012/legalが欲しかった

私が試してみました

Options +FollowSymLinks
RewriteEngine on
RewriteRule guarantees/(.*) cd2012/index\.php/legal=$1 [R=301,L]
RewriteRule guarantees cd2012/index\.php/legal=$1 [R=301,L]
RewriteRule ^guarantees/$ cd2012/index\.php/legal=$1 [R=301,L]

それらのどれも機能していません。

4

3 に答える 3

2

書き換えたい場合[R=301,L]、これは基本的に「このドキュメントが永続的にこの場所に移動されたことをユーザーのブラウザに伝える」ことを意味するため、使用したくありません。

また、最終パスは正規表現ではないため、エスケープしないでください。

代わりに、これを行います(例に従って):

RewriteEngine on
RewriteRule ^cd2012/?$ cd2012/index.php
RewriteRule ^cd2012/(.*) cd2012/index.php?$1=1
于 2012-08-31T12:12:34.097 に答える
1
<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteRule ^([a-zA-Z0-9]+)/$ index.php?$1=1 [L]
   RewriteRule ^([a-zA-Z0-9]+)$ index.php?$1=1 [L]
</IfModule>

今、これが私にとって魔法です。

于 2012-09-11T21:05:44.023 に答える
0

これを試して :

RewriteEngine on
RewriteBase /
RewriteRule ^cd2012/legal$ cd2012/index.php?legal=1 [L]
于 2012-08-31T13:28:00.817 に答える