很多站长可能都有同样的烦恼,直连中国线路好的服务器价格昂贵或者不稳定,而物美价廉又稳定的服务器呢线路不好,访问速度慢,两者很难兼得或者成本很高。
这个难题其实用一个很简单的部署策略就可以解决,就是加一层前端反代。用线路好的小规格vps,反代线路差但是稳定强健的后端服务器。
具体操作如下:
后端先架好你的网站,就是该装的php mysql apache啥的,都有很多一键包,这里不多说了。
找一个线路好的小vps做前端,修改网站域名的a记录到这个前端。然后前端简单装一个debian就行,进ssh后运行命令 apt-get install -y nginx
(这一步如果出错就先apt-get update 更新一下软件包)
nignx装好后 rm -rf /etc/nginx/nginx.conf
然后vi /etc/nginx/nginx.conf
进入vi编辑器之后按一下i进入插入模式,粘贴入以下内容
user www-data;
worker_processes 4;
pid /run/nginx.pid;
events {
worker_connections 768;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_tokens off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
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;
gzip on;
gzip_disable "msie6";
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
然后 :wq回车 保存退出,这就完成了nginx的反代设置
接下来就可以建立一个反代网站了:
vi /etc/nginx/sites-enabled/mjj.party
进入编辑器后按i并粘贴入以下内容:
server {
listen 80;
server_name mjj.party www.mjj.party;
index index.html index.htm index.php;
access_log off;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Referer http://mjj.party;
proxy_set_header Host $host;
proxy_set_header Cookie $http_cookie;
proxy_pass http://1.1.1.1;
}
}
(其中mjj.party替换成你的网站域名, 1.1.1.1换成你的后端服务器ip)
然后 :wq回车 保存退出,service nginx restart 重启nginx
结束
应用这个策略,还可以灵活的应付ddos攻击,你只要注意保护后端ip不要泄露,攻击者只能打你的前端,而你要做的只是适时的换一个前端就行了。
如果是要镜像别人的网站,那么第二步的设置是这样:
server { listen 80; server_name mjj.party www.mjj.party; index index.html index.htm index.php; access_log off; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Referer http://www.hostlic.com; proxy_set_header Host www.hostloc.com; proxy_set_header Cookie $http_cookie; proxy_pass http://23.225.155.85; proxy_redirect off; subs_filter_types text/html text/css text/xml; subs_filter www.hostloc.com mjj.party; subs_filter hostloc.com mjj.party; } } |
原文连接:http://gaoit.de/a/2