为什么我不能使用 apache .htaccess 重定向索引页?

为什么我不能使用 apache .htaccess 重定向索引页?

我有一个只有少量页面的网站,我试图对所有内容进行 301 重定向。除了索引文件之外,其他一切都正常。无论我将其写为http://example.com/index.htmlhttp://example.com/http://example.com,索引文件都不会显示重定向。

这是我的.htaccess 文件:

Redirect 301 / https://example2.com/
Redirect 301 /index.html https://example2.com/
Redirect 301 /services.html https://example2.com/services/
Redirect 301 /contact-us.html https://example2.com/contact/

https://example.com/当有人输入 时,它会被更改为没有“/”,这可能会有所帮助https://example.com。我不确定这是否相关。

谢谢

答案1

为了Redirect在文件中有效.htaccess,您必须允许FileInfohttpd.conf配置文件中的虚拟主机定义中覆盖:

<VirtualHost *:80>

  ServerName   www.example.com
  ServerAlias  example.com

  ... blah blah

  <Directory "/">
    ...
    AllowOverride FileInfo
    ...
  </Directory>

  ... blah blah

</VirtualHost>

将该AllowOverride FileInfo行添加到您的配置中,重新启动 Apache 服务器,然后重试。

相关内容