apache2 重写配置不起作用

apache2 重写配置不起作用

www.example.org.conf我有一个想要重定向的文件httphttps。问题是该文件不能正常工作。

<VirtualHost *:80>
        ServerName example.org
        ServerAlias www.example.org
        DocumentRoot "/var/www/example.org/www"
        CustomLog /var/www/example.org/www.access.log common
        ErrorLog /var/www/example.org/www.error.log
RewriteEngine on
RewriteCond %{SERVER_NAME} =example.org [OR]
RewriteCond %{SERVER_NAME} =www.example.org
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]
</VirtualHost>

重定向实际上是由 letsencrypt 自动生成的,但存在一个问题。

输入http://www.example.org将重定向至https://www.example.org, 如预期。

问题是当你输入http://example.org,它将显示 apache 默认页面而不是重定向到 https。

我可以在输入时验证 SSL 配置是否正常工作https://example.org或者https://www.example.org,显示我想要的页面。因此我得出结论,问题出在mod_rewrite。但是,我不知道哪里出了问题。事实上,我的其他遵循相同结构的 VirtualHosts 可以按预期工作。

请帮我找出我的网站配置出了什么问题。顺便说一下,我在 Debian 中使用 apache2。

答案1

这种情况通常是因为您的000-default网站已启用,当安装在 Debian 服务器上时,该网站会自动启用apache2。检查是否000-default已启用。

相关内容