我有这个.htaccess
文件:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?p=$1 [QSA]
我想创建最后一条规则的例外:如果用户输入,example.com/somefoldername
它不应该重定向到index.php?p=somefoldername
,而是重定向到./somefoldername/index.php
。
我想这是一项非常简单的任务!但想不出解决办法。我试过了
RewriteCond ^somefoldername$ somefoldername/index.php
但它不起作用。
添加此行:
RewriteCond ^(somefoldername)/?$ $1/index.php [L]
导致“内部服务器错误”。
提前致谢!
答案1
有点“尝试”它(阅读:现在不看文档),但它是:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)/?$ $1/index.php [QSA]
话虽如此,你的条件已读“如果请求文件名不是目录,并且请求文件名不是文件,则按照此规则重写。” 因此,如果somefoldername/index.pxp
已经存在,它甚至不应该触发此重写。