个人网站部署策略 - 反代服务器架设超简易教程

admin 2017-12-20 2890



很多站长可能都有同样的烦恼,直连中国线路好的服务器价格昂贵或者不稳定,而物美价廉又稳定的服务器呢线路不好,访问速度慢,两者很难兼得或者成本很高。

这个难题其实用一个很简单的部署策略就可以解决,就是加一层前端反代。用线路好的小规格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

最新回复 [0]
返回