1

如何编写重写规则,以便它包含 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 和正则表达式时,我真的是一个初学者。

4

2 回答 2

0

你在正确的轨道上。试试这个:

RewriteEngine on
RewriteBase /dev/m/
RewriteRule ^sr/(.+)$ sr.php?sr=$1 [L,NC,QSA]
于 2012-05-29T22:07:29.897 回答
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 的参数转义问题。

于 2012-05-30T13:23:16.090 回答