首先看一下自己的httpd.conf文件中有没有引入如下几个模块(如果没有请自行安装一下,或者导入一下)
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
接着配置反向代理虚拟机,代码如下(以配置443端口举例)80端口类似
<VirtualHost *:443>
DocumentRoot "/var/www/ghadmin/demo"
ServerName https://xxx.com
ServerAlias
<Directory "/var/www/ghadmin/demo">
Options FollowSymLinks ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
#配置证书
SSLEngine on
SSLCertificateFile /etc/httpd/cert/xxx.com_public.crt
SSLCertificateKeyFile /etc/httpd/xxx.com.key
SSLCertificateChainFile /etc/httpd/xxx.com_chain.crt
SSLProxyEngine On #打开ssl代理引擎
ProxyRequests Off # 关闭代理请求
ProxyPreserveHost On #保存代理主机
ProxyVia On #代理通过请求
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8081/ Keepalive=On #保持长连接
ProxyPassReverse / http://localhost:8081/
#解决proxy Error 502错误
SetEnv force-proxy-request-1.0.1
SetEnv proxy-nokeepalive 1
</VirtualHost>
重启一下apche systemctl restart httpd.service;
简单的几行代码,希望可以解决各位遇到的问题