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

前端之家收集整理的这篇文章主要介绍了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指令.配置应包含类似的行

  1. Listen 80
  2. Listen 443

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

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

  1. Listen 8080
  2. Listen 4433

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

  1. NameVirtualHost 0.0.0.0:8080
  2. NameVirtualHost 0.0.0.0:4433
  3.  
  4. <VirtualHost 0.0.0.0:8080>
  5. ServerName the.server.name
  6. ServerAlias *
  7. DocumentRoot /var/www/plain
  8. </VirtualHost>
  9.  
  10. <VirtualHost 0.0.0.0:4433>
  11. ServerName the.server.name
  12. ServerAlias *
  13. DocumentRoot /var/www/ssl
  14.  
  15. SSLEngine On
  16. SSLCertificateFile /the/certificate/file
  17. SSLCertificateKeyFile /the/key/file
  18. </VirtualHost>

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

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

猜你在找的Linux相关文章