我有一个关于重写 url 的快速问题。我希望我的所有页面都这样重写
mysite.com/edit.php -> mysite.com/edit/
mysite.com/search.php -> mysite.com/search/
除此之外,它应该仍然能够接受参数
mysite.com/edit.php -> mysite.com/edit/?id=2
这就是我到目前为止所拥有的,但它没有结束/
,所以它只是mysite.com/edit
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME}\.php -f
RewriteRule ^(.+)$ /$1.php [L,QSA]
此外,作为额外的,是否可以不允许用户实际添加.php
如果他们尝试过?因此,例如,如果我有/edit.php
并且我让它工作,/edit/
或者/edit
用户实际上尝试输入/edit.php
它是行不通的。