0

私はこのようなhtaccessを持っています

RewriteRule i_am_(.*)_fan([0-9]).html$ /fans.php?player=$1&page=$2

このような URL を入力すると、ページhttp://messi_fans.com/fans.phphttp://messi_fans.com/i_am_messi_fan2.htmlにリダイレクトされます。しかし、GET変数は

Array ( [player] => messi_fan2 [page] => ) 

この ようにGETしたいArray ( [player] => messi [page] =>2 ) 上記のhtaccessを修正するには?

4

3 に答える 3

1

次のように、少なくとも基本的なディレクティブといくつかの条件を使用してループを防止することから始めます。

Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI}  !fans\.php                        [NC]
RewriteCond %{REQUEST_URI}  ^/i_am_([^_]+)_fan([^.]+)\.html/? [NC]
RewriteRule .*              fans.php?player=%1&page=%2        [L]

静かにマッピングする

http://messi_fans.com/i_am_messi_fan2.html 末尾のスラッシュの有無にかかわらず

に:

http://messi_fans.com/fans.php?player=messi&page=2

永続的で目に見えるリダイレクトの場合は、[L] を [R=301,L] に置き換えます。

于 2013-03-06T14:20:53.993 に答える
0

に疑問符を追加して、遅延量指定子を使用する必要があります.*

i_am_(.*?)_fan([0-9]).html$
于 2013-03-06T12:35:41.213 に答える
0

そのはず

RewriteRule i_am_([a-zA-Z])_fan([0-9]).html$ /fans.php?player=$1&page=$2
于 2013-03-06T12:36:08.813 に答える