如何编写重写规则以便它接收部分URL并将用户重定向到包含该部分URL作为查询字符串的文件。
具体来说,我想从以下方面重定向用户:
http://localhost/SR/XXYYYZZ
以下内容:
http://localhost/sr.php?sr=XXYYZZ
以下是我编写规则的方法:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/SR/(.*)$
RewriteRule ^SR/(.*)$ sr.php?sr=$1 [L]
这显然不起作用。如果这显然很明显,我道歉。对于Apache和正则表达式,我真的是初学者。
答案 0 :(得分:0)
你走在正确的轨道上。试试这个:
RewriteEngine on
RewriteBase /dev/m/
RewriteRule ^sr/(.+)$ sr.php?sr=$1 [L,NC,QSA]
答案 1 :(得分:0)
RewriteEngine On
RewriteRule ^/SR/ sr.php [L]
或
RewriteEngine On
RewriteBase /
RewriteRule ^SR/ sr.php [L]
然后在sr.php
$sr = substr($_SERVER['REQUEST_URI'], 4);
这可以避免mod_rewrite的参数转义问题。