我已经创建了一个htaccess网址重写,以获得我的网址webseite.com/dashboard.php到webseite.com/dashboard。
我的问题是,当我访问我的网站的某些网站,如https://example.com/detail_user.php?id=1
,我给参数(数据库数据)超过我的网址。
使用我的重写规则,它忽略了添加到url的参数。
有没有htaccess规则可以给予参数,但是在访问普通站点时,要去掉.php结尾?
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]+)/$ $1.php
2条答案
按热度按时间wlzqhblo1#
我认为您需要的是附加[QSA]。
QSA的意思是“查询字符串附加”,如果有一个查询字符串与原始URL一起传递,它将被附加到重写。
在您的用例中,
/detail_user.php?id=1
变为/detail_user?id=1
bmp9r5qi2#
重写条件%{REQUEST_FILENAME}!-d时的重写引擎重写条件%{REQUEST_FILENAME}.php -f重写规则(.)/(.)?$$1.php?$2