Nginx 反向代理google
时间:2015-02-09 12:51来源:linux.it.net.cn 作者:IT
首先,把网站的服务器更改为 nginx,以便能够使用反向代理的功能。下载 nginx 版本后,大致使用如下的命令来编译安装:
1 |
./configure --prefix=/usr/local/nginx --with-openssl=/usr/local/src/openssl --with-http_sub_module --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module |
这里面重点是 nginx.conf 的配置文件,网上别人的资料多数是抄来抄去,很多错乱,根据别人的一些领悟,加上自身的测试,总结了这些要点:
-
rewrite 规则使用如下:
2 |
try_files $uri $uri/ /index.php?$args; |
4 |
rewrite /wp-admin$ $scheme://$host$uri/ permanent; |
-
不能使用 upstream 来提供负载均衡,甚至于在 proxy_pass 配置中连域名都无法使用,否则会出现重定向的错误。
-
不能在 set_header 中设置 proxy_set_header Host “www.google.com”,否则还是出错。
-
最终的 conf 配置内容大致如下:
03 |
server_name google.nowo.com; |
04 |
rewrite ^(.*) https://google.nowo.com$1 permanent; |
09 |
server_name google.nowo.com; |
11 |
ssl_certificate /usr/local/nginx/conf/server.crt; |
12 |
ssl_certificate_key /usr/local/nginx/conf/server.key; |
15 |
proxy_redirect http://www.google.com/ /; |
16 |
proxy_cookie_domain google.com google.nowo.com; |
17 |
proxy_pass http://173.194.127.48; |
18 |
proxy_set_header Accept-Encoding ""; |
19 |
proxy_set_header User-Agent $http_user_agent; |
20 |
proxy_set_header Accept-Language "zh-CN"; |
21 |
proxy_set_header Cookie "ID=06221a3783b4d25f:U=c4ead7131e4cc66e:FF=0:LD=en:CR=2:TM=1292312194:LM=1392823744:DV=0SJoub_nzRUL:GM=1:IG=4:S=CX14SzHTuABFnuyk"; |
22 |
sub_filter www.google.com google.nowo.com; |
大功告成,可以使用自己定义的域名来访问谷歌,并正常使用搜索功能了。
(责任编辑:IT) |
------分隔线----------------------------