以下代码效果很好。然而,它需要花费很多时间来处理数百个php文件;
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !^/abc.php
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} !^/home.php
RewriteCond %{REQUEST_URI} !^/settings.php
RewriteCond %{REQUEST_URI} !^/messages.php
...
...
...
RewriteRule ^/?([a-zA-Z0-9\-=&_@/.]+)/?$ abc.php?u=$1 [QSA,L]
我必须逐行编写所有php文件。是否有任何简单的方法可以为所有php页面执行此操作?
答案 0 :(得分:1)
是的,您可以使用:
RewriteEngine on
RewriteBase /
# The request is not for a valid file/directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+?)/?$ abc.php?u=$1 [L,QSA]
如果您只想排除PHP文件,可以使用:
RewriteCond %{REQUEST_URI} !\.php$ [NC]
RewriteRule ^(.+?)/?$ abc.php?u=$1 [L,QSA]