我无法更改我的流媒体网站主页

I can't change my streaming website homepage

我正在尝试更改我网站的主页,但没有任何反应。在“DirectoryIndex index.html #to make index.html as index”下方输入代码时,我的主页保持不变。我正在更改 .htaccess

中的文件
<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On

    # Explicitly disable rewriting for front controllers
    RewriteRule ^index.php - [L]
    RewriteRule ^index.php - [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    # Change below before deploying to production
    #RewriteRule ^(.*)$ index.php [QSA,L]
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

DirectoryIndex index.html #to make index.html as index

我的网站是用php写的,我想把首页放在html

RewriteRule ^(.*)$ index.php [QSA,L]

* 量词更改为 +,使其仅匹配 non-empty URL-paths,以允许 DirectoryIndex 文档(即。index.html) 为主页请求提供服务,而不是将请求传递给 front-controller(即 index.php)。或者,只需使用一个点 (.) 作为正则表达式,因为您不会对捕获的 URL-path 做任何事情。例如:

RewriteRule . index.php [L]

(此处不需要 QSA 标志。)

尽管如此,由于您使用的是 front-controller 模式(即,将所有请求路由到 index.php),您可能应该配置适当的响应以从 index.php 提供服务?


旁白:

DirectoryIndex index.html #to make index.html as index

您应该删除,您认为 是该行末尾的注释,即。 “#to make index.html as index”。这实际上不是评论。 Apache 不支持 line-end 注释(仅支持 full-line 注释)。在这种情况下,#tomakeindex.htmlasindex 将被视为 DirectoryIndex 指令的附加参数(因此您实际上并没有收到错误)。

请参阅 以下有关使用 line-end 评论的问题:


更新:

备选方案

请尝试以下操作(这会替换上面的 整个 .htaccess 文件):

Options +FollowSymlinks
RewriteEngine On

# Explicitly disable rewriting for front controllers
RewriteRule ^index\.(php|html)$ - [L]

# Rewrite any request for anything that is not a file to "index.php"
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]

# Rewrite the homepage only to "index.html"
RewriteRule ^$ index.html [L]

不需要 <IfModule> 包装器。 (这是你的服务器,所以你知道 mod_rewrite 是否启用,这些指令不是可选的。)

确保您在测试前已清除浏览器缓存。