apache做http和https反向代理,apachehttps
apache做http和https反向代理,apachehttps
首先是库之类的环境配置,
如果是编译的,./configure附加--enable-proxy参数,把代理模块编译进来。
然后/usr/sbin/httpd -l,显示
Loaded Modules: core.c mod_access.c mod_auth.c mod_include.c mod_log_config.c mod_env.c mod_setenvif.c mod_proxy.c proxy_connect.c proxy_ftp.c proxy_http.c prefork.c http_core.c .......带有proxy前缀的模块即表示已经启用代理。
如果是安装好的,就在配置文件http.conf里启用相应的模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
可以通过/usr/sbin/httpd -D DUMP_MODULES,显示
Loaded Modules:
……
proxy_module (shared)
proxy_http_module (shared)
proxy_connect_module (shared)
就可以了。
现在可以开始配置虚拟主机——
如:
将www.b.org这个网址指向传递到htttp://127.0.0.1:9000这个地址
这样对www.b.org的访问,返回的数据将是来自http://127.0.0.1:9000
配置https访问,即ssl加密访问:
首先要开启apache的ssl访问能力,跟随http://blog.csdn.net/ownfire/article/details/7686746所写配置即可。
NameVirtualHost *:443 或者 NameVirtualHost www.abc.net:443
<VirtualHost www.abc.net:443>
ServerName www.abc.net
SSLEngine on
SSLProxyEngine on
SSLCertificateFile /etc/httpd/conf/server.crt
SSLCertificateKeyFile /etc/httpd/conf/server.key
<Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass /test https://127.0.0.1/
ProxyPassReverse /test https://127.0.0.1/
</VirtualHost>
将对https://www.abc.net/test这个网址的访问指向https://127.0.0.1/,SSLCertificateFile和SSLCertificateKeyFile分别是配置ssl时生成使用的密钥文件。
评论暂时关闭