在 apache 上通过 https 排除一个子域提供服务

在 apache 上通过 https 排除一个子域提供服务

小介绍:

我有特定域的 SSL 证书(example.com, info.example.com, intranet.example.com,...)

除之外的所有域都info.example.com在 Apache 上运行。info.example.com正在 Windows 服务器上运行。

我的问题
所有网站都正常运行,但我有一个问题,info.example.com我不想将其作为“HTTPS”服务器(暂时)。但我的 VirtualHosts 中有一个永久重定向……这导致了问题 -> 当我访问时info.example.com,它会将我重定向到https://info.example.com我不想要的地方。如果我删除永久重定向,它就会正常工作,但我不想在我的 上通过 http 提供任何服务example.com

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot "/var/www/html"
     ServerName example.com
     Redirect permanent / https://example.com/
    <Directory "/var/www/html">
        Options -Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

我甚至不会在这里问,因为这肯定是一件非常愚蠢的事情,但我为此挣扎太久了。

请原谅我的英语。

答案1

如果你说的是真的,只需替换

Redirect permanent / https://example.com/

经过

RewriteEngine on 
Rewritecond %{HTTP_HOST} !^info\.example\.com
RewriteRule (.*) https://example.com/$1 [R=301,L]

并且不要忘记启用 mod_rewrite ( a2enmod rewrite)

相关内容