2017年2月10日星期五

Nginx的反向代理配置

用VPS也大半年了,感觉VPS确实是一个很耐折腾的玩意儿,但是如果你网站需要很严格的在线率而你又对数据很看重的话还是不要用VPS来做站,即便是使用了VPS来做站也要时刻注意备份!!!当然如果你的网站不是流量很大那种,还是推荐使用成熟主机商提供的虚拟主机,DreamHost就是非常不错的选择,本身对中国访问就非常友好,第一年使用优惠也比较多。另外它的SSH还非常快,平时拿来翻个小强是很不错。
扯远了。这里主要记录下折腾Nginx的反向代理的一些经验。
当然,你得安装Nginx。如果你不想直接在源里安装旧版的Nginx的话,可以直接去Nginx官网下载最新版的Nginx编译安装。
编译过程,请善用Google。
第一个就是做Google GHS的反向代理。这个主要是用来帮助你正常使用Google App及其他服务的域名绑定功能。
upstream ghs {
server ghs.google.com:80;
}

server {
listen 80;
server_name ghs.xx.com *.a.com *.b.com;

location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_pass http://ghs;
proxy_set_header  x-real-IP  $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
替换你要修改的你需要绑定的域名。
接着就是伟大的Twitter。很简单。
server {
listen 80;
server_name api.xxx.com;

location / {
proxy_redirect off;
proxy_pass https://twitter.com;
proxy_set_header  x-real-IP  $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
还有位置服务方块4.
server {
listen 80;
server_name 4sq.xxx.com;

location / {
proxy_redirect off;
proxy_pass http://api.foursquare.com/;
proxy_set_header  x-real-IP  $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
然后就是域名绑定到一些你要使用的别的端口。
比如安装基于Ruby的Wiki程序 instiki,就需要使用到2500端口。
server{
listen       80;
server_name xx.xx.com;
location / {
proxy_pass http://xx.xx.com:2500;
}
}
比如安装基于Ruby的nanoc,安装使用需要用的3000端口。
server{
listen       80;
server_name xx.xx.com;
location / {
proxy_pass http://xx.xx.com:3000;
}
}
地点: 中国四川省成都市