我想要的是只有当我的根域被访问时,意味着URI是空的,它会被重写而不重定向,否则重写为index.php,如果不访问文件或文件夹。我的.htaccess看起来是这样的:目录索引页在htaccess前面
RewriteEngine On
RewriteBase/
RewriteRule ^/?$ /mypages/landing_page.html [QSA,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
它工作在某些服务器上的预期,但在另一个它只能如果没有在文件夹中没有index.php文件。像目录索引前面的htaccess规则?如果我删除index.php或将其重命名为index2.php,并相应地更改我的htaccess规则,按预期重写。
任何想法可能会导致服务器的行为像这样?
不知道你正在运行的Apache的版本,但这个错误发音相似:https://开头BZ。 apache.org/bugzilla/show_bug.cgi?id=53929 –
我认为你一定是对的。它的工作地点Apache是2.2.2,它不是2.4.7。不幸的是,这台服务器不在我的控制之下,管理员告诉我说2.4.9版本不是LTS,我需要等待两个月。目前我可以接受使用一些解决方法。感谢您的发现,我会将其标记为已接受。 – igrynsh
igrynsh。它看起来像一个主持人删除我原来的答案,并将其转换为评论。我这次重新发布了我的答案,如果你能重新接受。谢谢! –