我有这个RewriteRule,效果很好: - )

RewriteRule ^([^/]*)/$ /script.html?id=$1 [L]

这个规则的坏处是它还匹配我不想要的物理目录。

如何判断 mod_rewrite 忽略物理目录并仅在匹配的目录不存在时应用上述规则?

有帮助吗?

解决方案

查看 RewriteCond 。在规则之前放置以下内容以免除目录和文件

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

其他提示

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/$ /script.html?id=$1 [L]
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top