我正在尝试从网址中删除?id =,并用斜杠(/)替换?id =。
我想显示地址:
https://localhost/Test/Change.php?id=sd32sdas93ks93kf.553sa
为:
https://localhost/Test/Change/sd32sdas93ks93kf.553sa
我设法从网址中删除了.php
,但是我仍然遇到?id=
可访问带有?id=
的原始链接。当我导航到没有?id=
的页面时,我得到:
在此服务器上找不到The requested URL Test/Change/sd32sdas93ks93kf.553sa.php
。
有人知道我该如何解决吗?
这是我的.htaccess:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} \s/+Change(?:\.php)?\?id=([a-z\-_0-9]+)/([^/.]+) [NC]
RewriteRule ^Change/%1? [R,L]
RewriteRule ^Change/([a-z\-_0-9]+)/([^/.]+)/?$ Change.php?id=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]