【发布时间】:2012-09-23 11:34:14
【问题描述】:
网址: http://mysite.com/amember/login.php?amember_redirect_url=/ajax/?id=9999
我需要将其重写为: http://mysite.com/amember/login.php?amember_redirect_url=/?p=9999
我的意思是该类型的所有网址(最后带有 ID) 我的重写:
RewriteRule http://mysite.com/amember/login.php\?amember_redirect_url=/ajax/\?id=(.*) http://mysite.com/amember/login.php\?amember_redirect_url=\/?p=$1 [R=301,L]
到目前为止看起来是合法的,但它似乎没有工作......
在该行之前,我有以下 3 行:
RewriteEngine on
RewriteBase /
RewriteRule ^members/(.*) http://mysite.com/$1 [R=301,L]
更新。 试过这个:
RewriteRule /amember/login.php\?amember_redirect_url=/ajax/\?id=(\d+) /amember/login.php?amember_redirect_url=/?p=$1 [R=301,L]
没用
RewriteRule ^amember/login.php\?amember_redirect_url=/ajax/\?id=(\d+) /amember/login.php?amember_redirect_url=/?p=$1 [R=301,L]
要么
RewriteRule ^amember/login.php\?amember_redirect_url=/ajax/\?id=(\d+) http://mysite.com/amember/login.php?amember_redirect_url=/?p=$1 [R=301,L]
要么
更新:
RewriteCond %{QUERY_STRING} ^id=(.*)$ [NC]
RewriteRule /amember/login.php\?amember_redirect_url=/ajax/$ /amember/login.php\?amember_redirect_url=/?p=%1 [NC,R=301,L]
【问题讨论】:
-
阅读,修复了代码,但仍然无法正常工作。用我现在拥有的内容更新第一篇文章。
-
RewriteCond %{QUERY_STRING} ^id=(.*)$ [NC] 这个条件不满足
-
不知道该怎么办,尝试了很多不同的方法,仍然无法满足条件
标签: regex mod-rewrite url-rewriting rewrite url-rewrite-module