-1

クエリ文字列を非表示にするためにURLを書き換える際に問題が発生します。私は書き直そうとしています:

http://seynol.tk/comments?post_referrel_id=16

に:

http://seynol.tk/comments only

これは私がこれまでに試したことです:

RewriteBase /
Options +FollowSymlinks -MultiViews
RewriteEngine on
# to make `/path/index.php` to /path/
RewriteCond %{THE_REQUEST} ^GET\s(.*/)index\.php [NC]
RewriteRule . %1 [NE,R=301,L]

RewriteCond %{THE_REQUEST} ^GET\s.+\.php [NC]
RewriteRule ^(.+)\.php$ /$1 [NE,R=301,L,NC]

RewriteCond %{REQUEST_URI} !\.php$ [NC]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule . %{REQUEST_URI}.php [L]
4

1 に答える 1

0

クエリ文字列が設定されているかどうかを確認し、空のクエリ文字列を使用してリダイレクトを実行するだけです。

RewriteCond %{QUERY_STRING} post_referrel_id
RewriteRule (.*) $1? [R=301,L]

参照IDをURLに入れて、それをサイレントにクエリ文字列に変換する場合は、代わりにこれを使用します。

RewriteRule ^/comments/([0-9]+)$ /comments?post_referrel_id=$1

これは、投稿IDが数値であることを前提としています。URLは次のようになります:http ://sevnol.tk/comments/16

于 2012-11-19T14:48:37.617 に答える