Lion Server 上的 Apache 具有两个 IP 地址

Lion Server 上的 Apache 具有两个 IP 地址

我正尝试在同一台机器上的不同 IP 地址上运行 Apache 和 nginx。

这是一台带有一张以太网卡的 Mac Mini。我配置了两个 eth 网络设备。我尝试将 /etc/apache2 中的 apache 配置更改为仅监听一个 IP,并且大部分都有效。但是,第二个 IP 上仍然有一个从 http:80 到 https:443 的 apache 重定向,我不知道还能在哪里查找。我更改了所有虚拟主机、虚拟主机全局文件和 httpd.conf,包括所有默认文件和 __shadow 文件。

所以我想这不是 SSL 配置的问题,因为我根本不想涉及 SSL 部分。这是从 80 到 443 的重定向,这是不应该发生的。

我还需要做哪些更改才能使 apache 仅监听一个 IP 地址而不更改协议?

httpd.conf 太大。重要部分:

#Listen 12.34.56.78:80
<IfDefine !MACOSXSERVER>
Listen 172.1.1.1:80
</IfDefine>

000_any_80__shadow.conf

<VirtualHost 172.1.1.1:80>
ServerName *
RewriteEngine On

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
CustomLog "/var/log/apache2/access_log" combinedvhost
SSLProxyEngine On
SSLCipherSuite "ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM"
SSLProxyProtocol -ALL +SSLv3 +TLSv1
DocumentRoot /var/empty

</VirtualHost>

0000_any_80_.conf.默认

## Default Virtual Host Configuration

<VirtualHost 172.1.1.1:80 >
ServerAdmin [email protected]
DocumentRoot "/var/empty"
DirectoryIndex index.html index.php /wiki/ default.html
CustomLog "/var/log/apache2/access_log" combinedvhost
ErrorLog "/var/log/apache2/error_log"

<IfModule mod_ssl.c>
    SSLEngine Off
    SSLCipherSuite "ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM"
    SSLProtocol -ALL +SSLv3 +TLSv1
    SSLProxyEngine On
    SSLProxyProtocol -ALL +SSLv3 +TLSv1
</IfModule>

<Directory "/var/empty">
    Options All +MultiViews -ExecCGI -Indexes
    AllowOverride None
    <IfModule mod_dav.c>
        DAV Off
    </IfModule>
</Directory>

</VirtualHost> 

站点/virtual_host_global.conf

Listen  172.1.1.1:443
NameVirtualHost 172.1.1.1:443
Listen  172.1.1.1:80
NameVirtualHost 172.1.1.1:80

apachectl -S

VirtualHost configuration:
Syntax OK

谢谢!

答案1

要使其停止监听 443,请注释掉“Listen 172.1.1.1:443”和相关的 NameVirtualHost 行。您可能应该注释掉 000_any_80__shadow.conf 中的重写规则,或者直接删除或完全排除该文件(如果您不打算使用它)。

不过,奇怪的是,您的apachectl -S命令没有输出。它应该显示那些虚拟主机。如果您检查主 httpd.conf 文件的底部,它应该有一堆包含行。您能否验证它是否使用了您发布的所有额外 .conf 文件?

相关内容