我已经完成了我需要的大部分重写,但我无法让第二部分使用 2 个变量,这是我的代码:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ entity.php?vanityName=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)$ /entity.php?vanityName=$1§ion=$2 [L]
例如,最后一位需要允许 http://example.com/vanityName/Section 但它不传递 section 变量。如何在保留当前重写的同时解决此问题?
我怎样才能得到它,以便它适用于/vanityName、/vanityName/section,但允许我保持其他目录不被重写,例如/include/?
您可以为每个不想重写的目录添加额外的规则:
RewriteRule directoryName/? - [L]
如果直接在 RewriteBase /
之后编写这些规则,则不会检查其他规则。