NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
Adminmaster
V2EX  ›  NGINX

nginx 反代同一个域名应该怎么弄?

  •  1
     
  •   Adminmaster · Nov 5, 2015 · 6430 views
    This topic created in 3872 days ago, the information mentioned may be changed or developed.

    印象中都是用 a.comf 去反代 b.com ,那么问题来了,想 a.com 反代 a.com 应该怎么弄?
    还有一个小问题,用加拿大服务器做后端,香港 VPS 反代做前端,不知道速度会不会提高一些

    Supplement 1  ·  Nov 5, 2015
    用了 upstream 的方法,直接搞定了,谢谢大伙了哈
    23 replies    2015-11-05 18:51:43 +08:00
    botson
        1
    botson  
       Nov 5, 2015
    改香港 VPS 的 host 是否可行?把 a.com 指向加拿大机器的 ip
    或者在 ng 直接反向代理到加拿大的机器
    alect
        2
    alect  
       Nov 5, 2015
    多层反代我就在用,直接改 host 指向即可,速度会提升的。
    msg7086
        3
    msg7086  
       Nov 5, 2015 via Android
    反代地址写主机 ip
    arnofeng
        4
    arnofeng  
       Nov 5, 2015 via Android
    我也这么做了。效果很好。两个 64vps 反代。见 blog.adminhost.org 。先正常解析,然后再解析到 nginx 机器上。
    liyvhg
        5
    liyvhg  
       Nov 5, 2015
    用不同的端口可以一层一层反代下去
    coagent
        6
    coagent  
       Nov 5, 2015
    我就反代了一个站,外面的 DNS 解析指向香港机器的 IP ,实际机器在美国,香港机器 nginx 里用 IP 去连美国的机器, upstream 里写 IP 地址,香港机器 host 都不用弄。
    Adminmaster
        7
    Adminmaster  
    OP
       Nov 5, 2015
    @arnofeng 那 SSL 应该怎么整,我弄了下,证书显示不对
    arnofeng
        8
    arnofeng  
       Nov 5, 2015
    @Adminmaster 一样的整啊。配置 nginx 的 ssl 你看我的 https://www.blofeng.com 反代的
    arnofeng
        9
    arnofeng  
       Nov 5, 2015
    luanluan
        10
    luanluan  
       Nov 5, 2015
    @arnofeng 在 nginx 上启 HTTPS 反代上 host 加上 HTTPS 地址?
    ryd994
        11
    ryd994  
       Nov 5, 2015 via Android
    这才是真正的反代,其实很多 CDN 不就是这样么
    前些年舰娘火的时候有改 hosts 代理,就是这样
    硬广: http://www.crystalacg.com
    Adminmaster
        12
    Adminmaster  
    OP
       Nov 5, 2015
    @arnofeng 我 proxy_pass 那边填 http://ip 不能访问 ,填 https:ip 能访问,但是证书不识别。- -
    clanned
        13
    clanned  
       Nov 5, 2015 via Android
    我是这么弄的
    dnsmasq 配置 address=/.example.com real-server-ip

    nginx http 里 resolver 127.0.0.1
    arnofeng
        14
    arnofeng  
       Nov 5, 2015
    @Adminmaster
    ##blogfeng start
    server {
    listen 80;
    server_name www.blogfeng.com blogfeng.com;
    location / {
    proxy_redirect http://www.blogfeng.com/ /;
    proxy_pass http://*******;
    proxy_connect_timeout 60s;
    proxy_read_timeout 5400s;
    proxy_send_timeout 5400s;

    proxy_set_header Host "www.blogfeng.com";

    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 http;
    proxy_set_header Accept-Encoding "";
    proxy_set_header User-Agent $http_user_agent;


    }

    }


    server {
    listen 443;
    server_name www.blogfeng.com blogfeng.com;

    ssl on;
    ssl_certificate /etc/ssl/private/1_blogfeng.com_bundle.crt;
    ssl_certificate_key /etc/ssl/private/2_blogfeng.com.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA:AES128-GCM-SHA256:AES128-SHA256:AES128-SHA:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:ECDHE-RSA-AES128-SHA256:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!DSS:!PKS;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    location / {
    proxy_redirect http://www.blogfeng.com/ /;
    proxy_pass http://*********;
    proxy_connect_timeout 60s;
    proxy_read_timeout 5400s;
    proxy_send_timeout 5400s;
    proxy_set_header Host "www.blogfeng.com";

    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 http;
    proxy_set_header Accept-Encoding "";
    proxy_set_header User-Agent $http_user_agent;

    }

    }
    ##blogfeng end
    Adminmaster
        15
    Adminmaster  
    OP
       Nov 5, 2015
    @arnofeng 我的 conf 这样设置不知道是不是不对的:

    server {
    listen 80;
    server_name abc.com www.abc.com;
    return 301 https://abc.com$request_uri;
    }
    server {
    listen 443 ssl http2;
    server_name abc.com www.abc.com;
    ssl_certificate /etc/ssl/vhost/abc_com.crt;
    ssl_certificate_key /etc/ssl/vhost/abc_com.key;
    ssl_prefer_server_ciphers on;
    keepalive_timeout 60;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
    add_header Strict-Transport-Security max-age=63072000;
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;

    location / {
    proxy_pass http://ip;
    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
    proxy_set_header Accept-Encoding "";
    proxy_set_header Host $host;
    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 $scheme;
    add_header Front-End-Https on;
    proxy_redirect off;
    }
    }
    Adminmaster
        16
    Adminmaster  
    OP
       Nov 5, 2015
    @coagent upstream 怎么写,这样吗?

    upstream prod {
    server ip;
    }
    arnofeng
        17
    arnofeng  
       Nov 5, 2015 via Android
    @Adminmaster 。。。兄弟 不谷歌吗 你要手把手交的话 还是别折腾了。请人搞吧。
    Adminmaster
        18
    Adminmaster  
    OP
       Nov 5, 2015
    @arnofeng 主要是平时都是 a 代 b ,突然蒙逼了哈。。
    kmahyyg
        19
    kmahyyg  
       Nov 5, 2015
    参考 wen.lu 方案

    github
    Slienc7
        20
    Slienc7  
       Nov 5, 2015
    直接转发端口即可,反代浪费资源
    Andy1999
        21
    Andy1999  
       Nov 5, 2015 via iPhone
    一行 host 的事情……
    Laforet
        22
    Laforet  
       Nov 5, 2015
    @ryd994

    贵站的 UI 比以前好看多了,精神支持一下
    Adminmaster
        23
    Adminmaster  
    OP
       Nov 5, 2015
    @xgowex 已经用了 upstream 方案,搞定。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5378 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 138ms · UTC 08:55 · PVG 16:55 · LAX 01:55 · JFK 04:55
    ♥ Do have faith in what you're doing.