htaccess重写规则,将URL变量作为父文件夹

时间:2018-11-15 10:07:42

标签: php .htaccess redirect url-rewriting

我已经在我的文件夹中创建了一个.htaccess文件,并希望创建 URL:

www.example/good/page

前进

www.example/page?type=good

我当前的文档写为:

RewriteRule ^(\w+)$\/page page.php?type=$1 [NC,L]

但是它不起作用,我也不知道如何检查它是否正确

有人能够提供一些例子吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

确保重新启动引擎已打开,并且它正在重写基础。如下更改代码:

RewriteEngine on
RewriteBase /

RewriteRule ^/?([^/]+)/page?$ "page.php?type=$1" [L,QSA]

然后您的重写规则必须如下所示。

RewriteRule基本上意味着,如果完成的请求匹配^/?([^/]+)/page?$(匹配服务器根以外的任何URL),它将被重写为page.php?type=$1,这意味着对page.php的请求被重写为page.php?type=good)。

QSA表示如果原始URL传递了一个查询字符串,它将附加到重写后(example.com/good/page?id=2将重写为page.php?type=good&id=2

L表示如果该规则匹配,则不要再处理低于该规则的RewriteRules。

尝试一下,让我知道。接受答案(如果它对您有用)。