htaccess将index.html重定向到index.php,仅适用于域根

htaccess将index.html重定向到index.php,仅适用于域根,php,apache,.htaccess,mod-rewrite,redirect,Php,Apache,.htaccess,Mod Rewrite,Redirect,我有一个htaccess规则,它将index.html重定向到index.php RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.html\ HTTP/ RewriteRule ^(.*)index\.html$ /$1index.php [R=301,L] 这很好-当我打电话时,它会将我重定向到 但我遇到了一个问题,当子文件夹中有一个名为index.html的文件时,我的htaccess规则将该文件带到index.php 示例-to

我有一个htaccess规则,它将index.html重定向到index.php

  RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.html\ HTTP/
  RewriteRule ^(.*)index\.html$ /$1index.php [R=301,L]
这很好-当我打电话时,它会将我重定向到

但我遇到了一个问题,当子文件夹中有一个名为index.html的文件时,我的htaccess规则将该文件带到index.php

示例-to,子文件夹不应出现这种情况


有什么解决办法吗?

这条规则对于你正在做的事情来说可能有点过于复杂了

您只需要:

RewriteRule ^index.html$ /index.php [R,L]

试试这个。这对我来说是有效的

RewriteEngine On
RewriteBase /
RewriteRule ^index\.html?$ / [NC,R,L]

访问:

[R]
:Redirect,
[L]
:Last-不处理任何规则,尽管我感觉
[R]
本身意味着
[L]