日期:2014-05-16 浏览次数:20909 次
由于SquidNT,一直到STABLE.27也没把HTTP加速的几个属性移植过来, 导致windows下squid功能缺失。 其实Apache也有类似的功能,2.X中已经作为正式版发布。 用了一下午,研究出Apache的几个代替Squid的方法,供读者参考: 一、软件环境 ???????? Apache 2.X + Windows Server 2003或更高版本 二、搭建步骤 ???????? 1、安装Apache,并使其能正常运行(如果不会安装,请在BAIDU搜索相关文章) ???????? 2、打开httpd.conf,找到以下几个Module并将其启用(如果没有,可以自行添加) ????????????? mod_proxy.so(module_proxy) ????????????? mod_proxy_http.so(module_proxy_http) ????????????? mod_cache.so(module_cache) ????????????? mod_disk_cache.so(module_disk_cache) ???????? 3、参考以下VirtualHost段,进行设置: ?????????????? <VirtualHost *:80> ???????????? 其中,ProxyPass和ProxyPassReverse代表原始地址,CacheRoot为缓存目录,需要自行建立,并给Apache进程所在的用户分配NTFS权限,CacheEnable后的第一个参数disk表示用磁盘进行缓存,/images/ 表示需要缓存的目录,如果直接设置为/,可能导致动态脚本被缓存,那就失去了本身的意义。可以添加多个CacheEnable以缓存多个目录。CacheDirLevels和CacheDirLength一般不需要修改,这个表示缓存目录中数据目录的级数和目录名长度。 如果你使用智能解析,需要修改服务器的hosts文件,让目标网站的域名解析到正确的IP,不然可能会造成死循环。 至此,搭建完毕。
????????????????? ServerName bbs.91d2.cn
????????????????? ProxyPass / http://bbs.91d2.cn/
????????????????? ProxyPassReverse / http://bbs.91d2.cn/
????????????????? CacheRoot "d:/apache_cache/"
????????????????? CacheEnable disk /images/
????????????????? CacheDirLevels 2
????????????????? CacheDirLength 1
?????????????? </VirtualHost>