• 欢迎访问爱玩吧
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏爱玩吧

[教程]LNMP环境下,利用Nginx反代Google网站的方法

实用教程 aiwanyule 4年前 (2021-05-12) 已收录
文章目录[隐藏]

说明:反代的方法有很多,之所以选择lnmp的原因是方便,因为利用Nginx反代网站需要--with-http_sub_module拓展,而军哥的lnmp已经自动添加了,1.4版本的lnmp也可以自动签发SSL证书,不需要我们额外来申请,所以挺方便的,基本只要直接编辑配置文件即可!这里说下方法。

方法

本方法主要以反代Google为主,想反代其它网站的可以照葫芦画瓢,或者参考:利用Nginx反代来简单镜像HTTP(S)网站的方法,照搬配置文件就可以了。

首先得添加域名及自动签发SSL证书。然后编辑域名配置文件/usr/local/nginx/conf/vhost/your.com.conf

  1. server {
  2. listen 443;
  3. server_name 你的域名;
  4. #为了安全考虑(例如IP被Q),强烈建议使用HTTPS
  5. ssl on;
  6. ssl_protocols TLSv1.2;
  7. ssl_certificate ~/站点证书
  8. ssl_certificate_key ~/站点证书密钥
  9. location / {
  10. proxy_pass https://www.google.com;
  11. #把返回的302重定向的域名替换成你的。这里关闭
  12. proxy_redirect off;
  13. #替换指定字符串
  14. sub_filter www.google.com 你的域名;
  15. #字符串只进行一次替换,即只替换第一个被匹配的字符串。这里关闭。
  16. sub_filter_once off;
  17. #指定头部:
  18. proxy_set_header Host "www.google.com";
  19. proxy_set_header Referer $http_referer;
  20. proxy_set_header X-Real-IP $remote_addr;
  21. proxy_set_header User-Agent $http_user_agent;
  22. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  23. proxy_set_header X-Forwarded-Proto https;
  24. #防止谷歌返回压缩的内容,因为压缩的内容无法替换字符串
  25. proxy_set_header Accept-Encoding "";
  26. proxy_set_header Accept-Language "zh-CN";
  27. #把cookie的作用域替换成你的域名
  28. proxy_cookie_domain www.google.com 你的域名;
  29. #传固定的cookie给谷歌,是为了禁止即时搜索,因为开启即时搜索无法替换内容
  30. proxy_set_header Cookie "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=en-US:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2W1IQ-Maw";
  31. #启用proxy_cache缓存
  32. proxy_cache proxycache;
  33. proxy_cache_valid 304 2h;
  34. proxy_cache_valid 403 444 2h;
  35. proxy_cache_valid 404 2h;
  36. proxy_cache_valid 500 502 2h;
  37. proxy_cache_use_stale invalid_header http_404 http_500 http_502;
  38. proxy_cache_lock on;
  39. proxy_cache_lock_timeout 5s;
  40. }
  41. }

这里启用了proxy_cache这个缓存。一般lnmp已经编译了proxy_cache,需要我们编辑下nginx.conf文件才能使用。

  1. #在http里面添加如下代码即可
  2. http {
  3. proxy_cache_path /home/cache levels=1:2 keys_zone=proxycache:60m max_size=120m inactive=2h use_temp_path=on;
  4. proxy_temp_path /home/temp;
  5. proxy_cache_key $host$uri;
  6. }

注意:记得将配置文件里的www.google.com替换成你VPS所在国家的Google官网,不然可能会反代不成功,只出现域名跳转的情况。

之前是监控的443端口,然后再做域名的301跳转,将80端口的http跳转到https,编辑conf配置文件增加以下代码。

  1. server {
  2. listen 80;
  3. server_name moerats.com;
  4. return 301 https://www.moerats.com$request_uri;
  5. }

最后重启Nginx即可。

  1. lnmp nginx restart

配置参考:Nginx反代Google(进阶篇


爱玩吧 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:[教程]LNMP环境下,利用Nginx反代Google网站的方法
喜欢 (0)