我需要在 example.com/mydir/ 中放置一个 .htaccess,它将 /mydir/(.*) 中的所有 url 重写(不重定向)到 /mydir/index.php?var=$1。如果 url 指向现有路径或文件,则它与我无关(必须重写)。
我不能使用 +FollowSymLinks,但可以使用 SymLinksIfOwnerMatch。
谢谢。
答案1
我认为你正在寻找这样的东西:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule (.*) index.php?var=$1
前两个 RewriteCond 检查以确保文件或目录不存在。第三个检查确保您没有循环。它可能需要根据您的服务器设置进行调整,但它应该可以让您开始。