在我的网站中,我想重写来自
的网址http://myexampledomain.com/index.php?page=about
要
http://myexampledomain.com/about
所以,为了实现这一点,我确实修复了我的.htaccess
代码,如
RewriteEngine On
RewriteRule ^([^/]*)$ index.php?page=$1 [L]
RewriteRule ^api/([^/]*)$ api/$1 [L]
现在,我的问题是当我需要将查询字符串发送到我的页面URL时,我需要像
那样http://myexampledomain.com/about&myquery1=value&myquery2=value
我应该从&myquery1=value&myquery2=value
而不是?myquery1=value&myquery2=value
开始,因为.htaccess中已经使用了第一个?
。
但是现在,我需要修复此问题,我应该可以像
一样访问我的域名http://myexampledomain.com/about?myquery1=value&myquery2=value
我该如何解决这个问题?
答案 0 :(得分:1)
您只需在规则中添加QSA
标记:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ index.php?page=$1 [L,QSA]
QSA
(查询字符串追加)标志在添加新查询参数时保留现有查询参数。