0

目前,我使用以下代码将动态 URL 转换为 .htaccess 文件中的静态 URL:

RewriteRule ^([a-z0-9_\-]+)$ /index.php?page=$1 [L,NC]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\?page=([^&]+)\ HTTP/
RewriteRule ^index\.php$ http://www.mywebsite.com/%1? [R=301,L]

我想知道的是是否可以更改此规则,以便可以通过以下方式访问页面,www.mywebsite.com/news$_GET可以像这样附加其他信息:www.mywebsite.com/news?id=1

4

1 回答 1

1

您想看一下QSA 标志,它将在您构造查询字符串后附加查询字符串:

RewriteRule ^([a-z0-9_\-]+)$ /index.php?page=$1 [L,NC,QSA]

这使得它的请求http://www.mywebsite.com/news?id=1在内部被重写为:/index.php?page=news&id=1

于 2012-12-19T12:24:01.067 回答