![HTTPS 在自定义端口上不起作用](https://linux22.com/image/1286965/HTTPS%20%E5%9C%A8%E8%87%AA%E5%AE%9A%E4%B9%89%E7%AB%AF%E5%8F%A3%E4%B8%8A%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我这样做是为了进行更大规模部署的测试。我在一台干净的虚拟机中在 CentOS5 上运行 Apache(只安装了一些工具,PHP 等)。
如果在 /etc/httpd/conf.d/ssl.conf 中将 mod_ssl 设置为监听 443,则站点位于https://192.168.1.137加载得很好。
如果我将 ssl.conf 中的监听端口更改为 9443 等,然后重新加载 httpd,页面将无法加载https://192.168.1.137:9443- 我将 eth0 设置为受信任,并禁用 SElinux 以防万一,但仍然没有运气。
我是否遗漏了什么?
答案1
确保在 apache 配置中将所有引用更改为 443。ssh 服务器通常配置为虚拟主机。您需要更改它使用的端口以及更改监听端口。您可能需要类似以下虚拟主机配置(您应该根据需要进行调整:
<VirtualHost _default_:9443>
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
CustomLog /var/logs/apache/access_ssl.log combined
ErrorLog /var/logs/apache/error_ssl.log
LogLevel warn
</VirtualHost>
用于sudo netstat -lnp | grep 443
查看 Apache 是否正在监听所需端口。此版本的命令还将列出监听程序。要查看 Apache 正在监听哪些端口,请尝试以下命令sudo netstat -lnp | grep apache
。
答案2
禁用 SE Linux 时,您是否还确保更改了 FW 设置?上次我检查时发现,禁用 SELinux 并没有禁用 centos 下的防火墙。所以也许防火墙仍然打开了 443,而不是 9443