Nginx反代海外网站替换googleapis

第一步,在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo:

cd /etc/yum.repos.d/

vi nginx.repo

填写如下内容:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

保存,则会产生一个/etc/yum.repos.d/nginx.repo文件。

下面直接执行如下指令即可自动安装好Nginx:

yum install nginx -y
安装完成,下面直接就可以启动Nginx了:

/etc/init.d/nginx start

或者在任意目录下输入:

service nginx restart

现在Nginx已经启动了,直接访问服务器就能看到Nginx欢迎页面了的。

如果还无法访问,则需配置一下Linux防火墙。
iptables -I INPUT 5 -i eth0 -p tcp –dport 80 -m state –state NEW,ESTABLISHED -j ACCEPT

service iptables save

service iptables restart
Nginx的命令以及配置文件位置:

/etc/init.d/nginx start # 启动Nginx服务

/etc/init.d/nginx stop # 停止Nginx服务

/etc/nginx/nginx.conf # Nginx配置文件位置

chkconfig nginx on #设为开机启动

至此,Nginx已经全部配置安装完成。

一台主机上适应多个服务器:
在你的nginx通过代理的方式转发请求:配置如下
vi /etc/nginx/conf.d/nginx.conf

server {
listen 80;
server_name www.a.com;
charset utf-8;
access_log /home/a.com.access.log main;
location / {
proxy_pass http://127.0.0.1:80;
}
}

server {
listen 80;
server_name www.b.com;
charset utf-8;
access_log /home/b.com.access.log main;
location / {
proxy_pass http://127.0.0.1:81;
}
}

经过上面的办法,网站已经可以正常反代了,但是出现了一个问题,国内加载还是有问题。

经过分析原来是原始网站运用了google的Ajax插件,还有地图插件,网上问了一圈,

发现通过sub_filter就可以搞定,找了google的替换源,我们就搞定了。

server {
listen 80;
server_name www.b.com;
charset utf-8;
access_log /home/b.com.access.log main;
location / {
proxy_pass http://127.0.0.1:81;
sub_filter 'ajax.googleapis.com' 'ajax.lug.ustc.edu.cn';
sub_filter 'maps.googleapis.com/maps/api/js?key=BBBBBBBBBBBBBBBBBBBBBBB' 'maps.google.cn/maps/api/js?key=AAAAAAAAAAAAAAAAAAAAA';
}
}

Add a Comment

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.