分享
 
 
 

利用squid实现反向代理(同时具备内网代理)

王朝other·作者佚名  2006-11-23
窄屏简体版  字體: |||超大  

我的站点上的所有文件都是静态html,为了进一步的加快网页速度,于是使用squid实现反向代理缓存功能。

@ 安装squid

为了偷懒就直接使用ports安装,因为我将所有的服务器系统都安装在/s分区中,所以设置了PREFIX为/s/squid

# cd /usr/ports/www/squid

# setenv PREFIX /s/squid

# make install clean

安装完成后编辑/s/squid/etc/squid/squid.conf,我的配置内容如下:

########## Base control ##########

cache_mgr webmaster

cache_effective_user squid

cache_effective_group squid

visible_hostname sleepcat.3322.org

http_port 127.0.0.1:3128

icp_port 0

cache_dir ufs /usr/cache 300 16 256

cache_access_log /dev/null

cache_log /dev/null

cache_store_log /dev/null

error_directory /s/squid/etc/squid/errors/Simplify_Chinese

icon_directory /s/squid/etc/squid/icons

mime_table /s/squid/etc/squid/mime.conf

coredump_dir /s/squid/squid/cache

pid_filename /s/squid/squid/logs/squid.pid

hosts_file /etc/hosts

unlinkd_program /s/squid/libexec/squid/unlinkd########## Performance control ##########

cache_mem 8 MB

cache_swap_low 90

cache_swap_high 95

maximum_object_size 4096 KB

minimum_object_size 0 KB

maximum_object_size_in_memory 8 KB

ipcache_size 1024

ipcache_low 90

ipcache_high 95

fqdncache_size 1024

cache_replacement_policy lru

memory_replacement_policy lru

emulate_httpd_log off

log_ip_on_direct on

log_mime_hdrs off

dns_timeout 2 minutes

request_header_max_size 10 KB

request_body_max_size 0 KB

refresh_pattern ^ftp: 1440 20% 10080

refresh_pattern ^gopher: 1440 0% 1440

refresh_pattern . 0 20% 4320

negative_ttl 5 minutes

positive_dns_ttl 6 hours

negative_dns_ttl 1 minute

connect_timeout 1 minute

read_timeout 15 minutes

request_timeout 5 minutes

client_lifetime 1 day

half_closed_clients on

maximum_single_addr_tries 1

uri_whitespace strip

ie_refresh off

########## Access control ############

acl all src 0.0.0.0/0.0.0.0

http_access allow all

http_reply_access allow all

hierarchy_stoplist cgi-bin ?

########## Accelator control ############

httpd_accel_host virtual

httpd_accel_port 80

httpd_accel_with_proxy on

httpd_accel_uses_host_header on

########## Misc control ###########

ftp_user Squid@

ftp_list_width 32

ftp_passive on

ftp_sanitycheck on

初始化cache

# /s/squid/sbin/squid -z启动squid

# /s/squid/etc/rc.d/squid.sh start@ 设置apache

因为要对外部实现反向透明代理,所以apache不能再在外网IP的80端口服务,我将它设置到127.0.0.1的80端口,修改httpd.conf中的Listen为:

Listen 127.0.0.1:80

刷新apache配置:

# apachectl restart@ 重定向外网IP的80端口访问

我使用 mpd进行PPPoE拨号 ,所以外网接口为ng0,将所有发往ng0上的80端口请求转发到127.0.0.1的3128端口上,即转发到squid的服务端口。转发规则如下:

rdr ng0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128

同时为了使rdr规则转换后的包能通过防火墙,增加如下ipfilter过滤规则:

pass in quick on ng0 proto tcp from any to 127.0.0.1 port 3128 keep state@ 设置/etc/hosts文件

现在我们已经实现下面的功能:

client ------> ng0:80 ------> 127.0.0.1:3128

接下来就要使squid访问真正的服务以实现反向代理缓存。刚才我已经将apache设置到在127.0.0.1:80端口监听,现在只要让squid访问127.0.0.1:80便可,由于我们在squid的配置文件中设置了hosts文件的位置为/etc/hosts,所以我们只要在hosts文件中设置所有我们的WWW主机(包括虚拟主机)指向127.0.0.1便可。

127.0.0.1 matthew.3322.org sleepcat.3322.org mirrors.2288.org

同时请确保你的主机搜索顺序为 file bind,如果不是,请执行以下命令:

# echo "file" > /etc/host.conf

# echo "bind" >> /etc/host.conf"

现在整个流程如下:

client ------> ng0:80 ------> 127.0.0.1:3128 -------> 127.0.0.1:80

127.0.0.1:80 ----------> 127.0.0.1:3128 ----------> ng0:80 ----------> client

现在反向代理已经建成,刷新ipfilter和ipnat规则,启动squid,你会发现从外网访问你的网站的速度明显比以前快了很多,而且也支持虚拟主机。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有