您的位置:首页 > 运维架构 > Apache

apache配置远程代理及缓存

2016-01-26 16:36 417 查看
使用apache代理及缓存的目的:
将远程服务器(没有任何控制访问权限)上发布的服务,利用代理映射到本地服务器(可自由控制)。有效解决跨域问题。

利用缓存可以有效解决远程服务器的部分GET请求,如图片,JS等静态文件响应慢的问题。

配置步骤:
编辑httpd.conf,打开相关模块

# 硬盘缓存模块
LoadModule cache_module modules/mod_cache.so
# 内存缓存模块
LoadModule mem_cache_module modules/mod_mem_cache.so
# 代理模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
# 虚拟主机模块
LoadModule vhost_alias_module modules/mod_vhost_alias.so
2.编辑httpd.conf,打开引入虚拟主机配置,也可以直接将虚拟主机配置在httpd.conf,使用include的目的是为了提高虚拟主机配置的可读性方便后期维护。
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
3.编辑上一步中的extra/httpd-vhosts.conf,默认的那几个虚拟主机可以删掉,添加新的虚拟主机
<VirtualHost *:80>
# 浏览器中输入此服务名,才会访问到此虚拟机
ServerName 127.0.0.1
ErrorLog "logs/dummy-host3.cc.com-error.log"
CustomLog "logs/dummy-host3.cc.com-access.log" common

# 代理配置
ProxyPass / http://www.baidu.com/ # 反向代理配置,用于处理地址重定向
ProxyPassReverse / http://www.baidu.com/ # 将根路径下的所有请求缓存到服务器硬盘中,也可以配置其它路径
CacheEnable disk /
# 设置缓存文件的保存位置
CacheRoot E:/cc/www/proxy
# 默认的缓存过期时间,单位:秒
CacheDefaultExpire 86400
# 更多配置项可以参考 http://www.php100.com/manual/apache2/mod/mod_disk_cache.html </VirtualHost>
4.测试,在浏览器中输入http://127.0.0.1看看是否能够打开百度主页了。

提示:当被代理的服务器地址上找不到文件时,apache会在本地服务路径中查找文件,所以只要在本地服务器DocumentRoot下有crossdomain.xml,就不用担心flash在做跨域请求时出错的情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: