一、配置http反向代理地址
1、首先确保Apache有这些模块,在Apache根目录下确认有这些模块,主要包含以下模块:
mod_proxy.so
mod_proxy_ajp.so
mod_proxy_balancer.so
mod_proxy_connect.so
mod_proxy_http.so
然后打开配置conf/httpd.conf文件,将这些模块的注释去除,如下图所示:
2、修改配置文件,打开文件 conf/httpd.conf ,在文件末尾加上如下配置:
增加上述配置后,前端调用接口地址 “http://dfpv.x37-wechat.zhao/api-url/test“在代理服务器中就会变为“http://test.com/test“
二、配置https反向代理地址
在此我用的是Apache自带的证书
1、打开配置conf/httpd.conf文件,将此行打开
2、配置httpd-ssl.conf,由于Apache自带的配置太多,不好描述,精简后的配置如下:
Listen 443
SSLStrictSNIVHostCheck off
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
SSLProtocol all -SSLv2 -SSLv3
<VirtualHost *:443>
DocumentRoot "D:\phpStudy\WWW\demo" #站点根目录
ServerName test.zhao #站点地址
ServerAlias
<Directory "D:\phpStudy\WWW\demo">
Options FollowSymLinks ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile "D:\phpStudy\Apache\conf\ssl\server.crt" #证书地址配置项
SSLCertificateKeyFile "D:\phpStudy\Apache\conf\ssl\server.key" #证书地址配置项
SSLCertificateChainFile "D:\phpStudy\Apache\conf\ssl\server.crt" #证书地址配置项
# 开启ssl的反向代理
SSLProxyEngine on
Proxyrequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /tcc/ https://tcc.taobao.com/
ProxyPassReverse /tcc/ https://tcc.taobao.com/
</VirtualHost>
此配置用法同http用法一样。
3、配置完成后保存,重启Apache.
如果出现Apache启动不了的情况,在配置没有错误的情况下,可能是443端口被占用的问题。可以在Apache中的环境端口检测中查看,找出占用端口的服务,关掉即可。