我遇到了 Apache 和 example.org 的一个奇怪的问题。
www.example.org 和 example.org 都指向同一个 IP 地址。
http://example.org-> Apache 默认页面 http://www.example.org->https://www.example.org
https://example.org重定向至https://www.example.org正确。
我不知道为什么http://example.org似乎不遵守 vhost 规则。
这是 vHost conf
<VirtualHost example.org:80 *:80>
ServerAdmin webmaster@localhost
DocumentRoot "/var/www/exampleorg/httpdocs"
ServerName www.example.org
ServerAlias example.org
<Directory "/var/www/example/httpdocs">
Require all granted
AllowOverride All
</Directory>
RewriteEngine on
RewriteCond %{SERVER_NAME} =example.org [OR]
RewriteCond %{SERVER_NAME} =www.example.org
RewriteRule ^ https://www.example.org%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
我试过了
<VirtualHost *:80>
<VirtualHost example.org:80 *:80>
<VirtualHost example.org:80>
我已尝试交换 ServerName 和 ServerAlias。
我已尝试将两者都添加到 ServerAlias。
我尝试过使用/不使用 hosts 文件中指定的地址。
我不想禁用默认页面,仍有许多域解析到该 IP - 我不希望它们显示 example.org 内容。
我已经没有什么可以尝试的了。有人能建议我下一步该去哪里吗?
答案1
简单使用重定向
<VirtualHost *:80>
ServerName example.org
ServerAlias www.example.org
Redirect / https://example.org/
</VirtualHost>