打开一个好基友的博客,速度还不错,还以为使用的国内vps主机,就询问了一下使用的国外的主机,利用hostus的香港vps主机的256M套餐进行的跳转的。鉴于国内vps主机价格都不便宜,而香港vps主机也在SL机房成立之后国外主机商放出了一些便宜货之后,国人也在不断的进行价格调整,所以利用香港vps主机进行跳转是个不错的选择。现在本文利用NGINX实现反代加速网站的目的,操作方法如下:
第一、安装NGINX环境
可以使用直接编译源的方法安装NGINX,也可以直接用军哥的LNMP一键包安装带有NGINX环境的系统环境,也可以直接使用AMH4.2免费版中下载相关的插件也可以,方法很多,找到适合自己的就行,后期放出如何使用AMH免费版来搭建。
第二、添加站点配置文件
A – 这里可以用LNMP环境包vhost添加站点,也可以手工在nginx环境中添加虚拟主机站点配置。
vi /usr/local/nginx/conf/vhost/example.com.conf
注意红色部分,查找自己的!
B – 设置目录权限
mkdir /home/cache/path -p
mkdir /home/cache/temp
chmod 777 -R /home/cache
设置缓存目录权限存放路径。
C – 配置nginx conf文件
proxy_connect_timeout 5;
proxy_read_timeout 60;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
proxy_temp_path /home/cache/temp;
#临时文件目录
proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache_one:5m inactive=7d max_size=1g;
#5m为内存占用,1g为最大硬盘占用,cache_one为缓存区名称,如果需要修改对应修改。
需要对应B中的路径进行缓存的配置,一般直接用默认不要修改。
D – 配置example.com.conf
listen 80;
server_name example.com www.example.com;
#绑定的域名
index index.php;
#默认首页
access_log off;
#off 关闭日志
location / {
proxy_cache_key “$scheme://$host$request_uri”;
#缓存key规则,用于自动清除缓存。
proxy_cache cache_one;
#缓存区名称,与前面定义的相同
proxy_cache_valid 200 304 3h;
proxy_cache_valid 301 3d;
proxy_cache_valid any 10s;
#200 304状态缓存3小时
301状态缓存3天
其他状态缓存(如502 404)10秒
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#向后端传递访客ip
proxy_set_header Referer http://example.com;
#强制定义Referer,程序验证判断会用到
proxy_set_header Host $host;
#定义主机头
proxy_pass http://1.2.3.4;
#指定后端ip,可以加端口
#proxy_cache_use_stale invalid_header error timeout http_502;
#当后端出现错误、超时、502状态时启用过期缓存,慎用。
}
}
域名解析的时候,指向前端IP就可以。
第三、重启NGINX生效
/etc/init.d/nginx restart
这样就可以实现利用nginx给我们的网站加速,比如利用一台香港VPS低配置NGINX,给我们在网站数据在美国的VPS网站加速,可以提高网站用户访问的速度体验。
方法很简单,非常适合爱折腾的用户,注意当中的域名更改为自己的!想尝试的就一定要去实验一下,不经历的,就如纸上谈兵一样!这些方法到底是谁第一放出的,不知道,在这向老辈们致敬!