微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 使用相同的openssl端口443绑定不同端口的apache ssl端口

我有一个服务器( linux base),我在其中安装了dotcms,它在端口80上运行,openssl在端口443上.两者都在运行过程中启动.最近我在我的服务器上安装了apache.当我启动apache时它会卡住,因为apache上的认ssl端口是443而apache是​​80,它们都已经运行了.仅仅为了我的任务,我在端口90上只启动了没有ssl的apache.但是我想用apache启动ssl,显然在不同的端口上.是否可以使用相同的openssl绑定apache ssl?

我在运行过程中需要我的认dotcms我无法在任何情况下停止它,我只能在需要apache启动时重新启动我的dotcms服务.但我需要dotcms和apache来并行运行.

看到该链接上的图片(由于声誉较低,我无法上传图片)
http://developers89.byethost14.com/images/ssl.png

解决方法

是的,可以将Apache绑定到不同的端口并仍然使用SSL.

替换apache配置中的Listen指令.配置应包含类似的行

Listen 80
Listen 443

Apache将侦听使用这些配置选项定义的端口.替换它们,Apache将在另一个端口上侦听.

但是,您仍然需要告诉Apache在上面的端口上提供什么服务.假设您希望Apache开始侦听端口8080(普通)和4433(ssl).然后你需要将Listen指令替换为

Listen 8080
Listen 4433

在此之后,在这些端口上定义两个VirtualHost,如下所示:

NameVirtualHost 0.0.0.0:8080
NameVirtualHost 0.0.0.0:4433

<VirtualHost 0.0.0.0:8080>
    ServerName the.server.name
    ServerAlias *
    DocumentRoot /var/www/plain
</VirtualHost>

<VirtualHost 0.0.0.0:4433>
    ServerName the.server.name
    ServerAlias *
    DocumentRoot /var/www/ssl

    SSLEngine On
    SSLCertificateFile /the/certificate/file
    SSLCertificateKeyFile /the/key/file
</VirtualHost>

如果您没有任何VirtualHost定义,则不必包含ServerAlias指令(或ServerName,就此而言).

如果重新启动Apache,它将在8080上侦听未加密的连接,在端口4433上侦听SSL.请确保没有任何包含错误端口号的旧VirtualHost定义.

原文地址:https://www.jb51.cc/linux/401162.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐