ngnix 到 apache 配置代理设置

ngnix 到 apache 配置代理设置

我必须从 ngnix Web 服务器迁移到 apache Web 服务器。

将 ngnix 配置为 80 和 443 的代理服务器

ngnix 配置如下:

 server {
     listen 443;
     server_name my_root_domain.com;
     root /etc/nginx/html;
     location / {
         proxy_pass http://my_root_domain.com.us-east-1.amazonaws.com;
  }

server {
     listen 80;
     server_name my_root_domain.com;
     root /etc/nginx/html;
     location / {
         proxy_pass http://my_root_domain.com.us-east-1.amazonaws.com;
     }
 }

Apache httpd.conf 配置是否与上面的相同?

提前致谢

答案1

您的 nginx 配置看起来不对,因为虚拟主机看起来像 TLS(HTTPS) 站点,无需 SSL 指令。443 端口用于 HTTPS,而不是 HTTP。您需要 SSL 证书和私钥来创建 HTTPS 站点。您可以从以下位置免费获取一个启动SSL

您将需要 mod_proxy、mod_proxy_http 和 mod_ssl。确保在 httpd.conf 中取消注释这些行

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule mod_ssl.so

虚拟主机配置如下

NameVirtualHost *:80
<VirtualHost *:80>
   ServerName my_root_domain.com
   <Location />
      ProxyPassReverse / http://my_root_domain.com.us-east-1.amazonaws.com
   </Location>
</VirtualHost>

<VirtualHost *:443>
   ServerName my_root_domain.com
   SSLEngine on
   SSLProtocol all -SSLv2
   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM

   SSLCertificateFile /usr/local/apache/conf/ssl.crt
   SSLCertificateKeyFile /usr/local/apache/conf/ssl.key
   SSLCertificateChainFile /usr/local/apache/conf/sub.class1.server.ca.pem

   <Location />
      ProxyPassReverse / http://my_root_domain.com.us-east-1.amazonaws.com
   </Location>
</VirtualHost>

相关内容