apache2 ubuntu 默认页面未重定向到 https

apache2 ubuntu 默认页面未重定向到 https

当域以 开头时,Apache2 不会根据其中一条规则默认将 http 重定向到 https http://www。我的域使用 certbot。

000-default.conf- 已禁用

https://domain.com/- 正确加载

https://www.domain.com/- 正确加载

http://domain.com- 正确重定向

http://www.domain.com- 加载 Apache2 Ubuntu 默认页面

我尝试了许多组合,请查看我当前的 vhost 文件设置。

我的/var/www/html/.htaccess

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [NC,R=301,L]

我的/etc/apache2/sites-available/my_project.conf

<VirtualHost *:80>

        ServerName domain.com
        ServerAlias www.domain.com
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
RewriteCond %{SERVER_NAME} =www.domain.com [OR]
RewriteCond %{SERVER_NAME} =domain.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

我的/etc/apache2/sites-available/my_project-le-ssl.conf

<IfModule mod_ssl.c>
<VirtualHost *:443>

        ServerName domain.com
        ServerAlias www.domain.com
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        #django app directory setup

        #django app WSGI setup

Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/www.domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.domain.com/privkey.pem
</VirtualHost>
</IfModule>
<IfModule mod_ssl.c>
<VirtualHost *:80>

也许我遗漏了一些东西,您能给我指明正确的方向吗?

相关内容