假设我在 Apache2 中有以下 Vhost 定义
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName dummy.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/dummy
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Include /etc/letsencrypt/options-ssl-apache.conf
ServerAlias www.dummy.com
SSLCertificateFile /etc/letsencrypt/live/dummy.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/dummy.com/privkey.pem
</VirtualHost>
</IfModule>
<IfModule mod_ssl.c>
<VirtualHost *:80>
ServerName dummy.com
ServerAlias www.dummy.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/dummy
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
Redirect permanent / https://www.dummy.com
</VirtualHost>
</IfModule>
如果我输入
它重定向到
但是如果我输入
http://www.dummy.com或只是 www.dummy.com
它重定向到
这不是一个有效的网址。
虚拟主机配置中的什么导致了这种情况?由于虚拟主机不包含此重写规则,我看不到应该在哪里调试和解决问题