nginx 怎么把网站反代到目录? - V2EX
xzpjerry731
V2EX    NGINX

nginx 怎么把网站反代到目录?

  •  
  •   xzpjerry731 May 14, 2016 4389 views
    This topic created in 3665 days ago, the information mentioned may be changed or developed.

    想法是在目录下反代谷歌 一开始 location /{}这样弄没问题,但是我想把 location /{} 这种留给我的 blog 用,想在 location /google{}反代,但是问题来了,反代谷歌主页没问题,但是搜索 404. 所以是哪有问题呢?

    这是我的配置。。话说 v2 排版有点奇怪 T_T

    upstream yoyo { server 216.58.219.225:443 max_fails=3;

     server 216.58.219.226:443 max_fails=3; server 216.58.219.227:443 max_fails=3; server 216.58.219.228:443 max_fails=3; } 

    server {

     listen 443 ssl; #listen [::]:443 ssl; server_name lalalaala; ssl on; ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:RC4-SHA:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!DSS:!PKS; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 5m; location ^~/google{ proxy_redirect https://www.google.com/ /; proxy_pass https://yoyo/; proxy_set_header Host www.google.com; proxy_set_header User-Agent $http_user_agent; proxy_set_header Referer http://www.google.com; proxy_set_header Accept-Encoding ""; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } } 

    }

    15 replies    2016-05-17 05:10:30 +08:00
    babytomas
        1
    babytomas  
       May 14, 2016
    location ^~/google

    改为

    location ^~/google/

    试试?然后 rewrite /google 到 /google/
    xzpjerry731
        2
    xzpjerry731  
    OP
       May 14, 2016
    @babytomas 是这样? 并不行的说

    location ^~/google{

    rewrite ^/ https://$server_name/google/;

    }

    location ^~/google/{

    proxy_redirect https://www.google.com/ /;
    proxy_set_header Host www.google.com;
    proxy_set_header User-Agent $http_user_agent;
    proxy_set_header Referer http://www.google.com;
    proxy_set_header Accept-Encoding "";
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
    }
    maxsec
        3
    maxsec  
       May 14, 2016
    proxy_store
    xzpjerry731
        4
    xzpjerry731  
    OP
       May 14, 2016
    @maxsec 反代谷歌不用缓存吧= =
    lslqtz
        5
    lslqtz  
       May 14, 2016 via iPhone
    location /google/ {
    }
    个人用这种写法。
    xzpjerry731
        6
    xzpjerry731  
    OP
       May 14, 2016
    @lslqtz 能贴下你的配置吗? 我现在是反代后谷歌主页能打开,但是搜索过去就 404,我感觉应该是 proxy_redirect 的问题, 搜了语法规则还是不太懂 T_T
    lslqtz
        7
    lslqtz  
       May 15, 2016   1
    @xzpjerry731 我觉得和这句有关:
    proxy_redirect https://www.google.com.hk/ /google/;
    没替换?看一下请求看看。
    beginor
        8
    beginor  
       May 15, 2016 via Android   1
    最好是映射到端口,有些网页里面的链接写死从根目录“/”开始的就会出错了
    xzpjerry731
        9
    xzperry731  
    OP
       May 15, 2016
    @lslqtz 嗯。明天试试,我好像之前试过这样写没有用(但好像最后没有加 /这个在后面)
    xzpjerry731
        10
    xzpjerry731  
    OP
       May 15, 2016
    @beginor 好主意!之前没想到
    lslqtz
        11
    lslqtz  
       May 16, 2016
    @xzpjerry731 应该是要加 / 否则成文件了吧。。
    xzpjerry731
        12
    xzpjerry731  
    OP
       May 16, 2016
    @lslqtz 后面加了‘/’还是不行,请求是在 nginx 的 LOG 里看吗? 我看了下都是 get “ xxx ”这种
    lslqtz
        13
    lslqtz  
       May 16, 2016
    @xzpjerry731 我觉得如果是 404 的话看 log 并没啥用。。一个个试试看,顺便找找网上的配置。
    xzpjerry731
        14
    xzpjerry731  
    OP
       May 16, 2016
    @lslqtz 我也觉得,网上都是用 location /{}这样的,汗,干脆注册多个域名好了
    lslqtz
        15
    lslqtz  
       May 17, 2016 via iPhone
    @xzpjerry731 二级域名。 g.xxx.com 吧。
    About     Help     Advertise     Blog     API     FAQ     Solana     5358 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 53ms UTC 06:57 PVG 14:57 LAX 23:57 JFK 02:57
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86