nginx 代理转发https问题

新手上路,请多包涵

场景描述:
A B 2台主机
A 在内网环境
B 是双网卡同时连了内网和外网

A 因为业务需要直接访问 外网 https://www.cctv.com 发送请求
但是 A不能直接访问外网,只能在B上部署nginx 进行反向代理,
因为必须是 https,必须配置 ssl,这个nginx 公钥 私钥 和配置文件应该给如何处理?

阅读 5.7k
2 个回答
server {
    listen 443;
    server_name domain.com;
    ssl on;
    ssl_certificate /root/domain.pem;
    ssl_certificate_key /root/domain.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    real_ip_header    X-Forwarded-For;
    charset utf-8;

    location / {
        try_files /_not_exists_ @backend;
    }

    location @backend {
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host            $http_host;
        proxy_pass_request_headers on;
        proxy_pass http://192.168.1.2:8080;
    }
}

重点替换下key和pem文件, 以及 proxy_pass的值即可

需求:

A需要通过B访问www.cctv.com

配置B服务器的nginx,添加一个反向代理到cctv

server {
    listen 80;
    server_name B的域名;
    
    location / {
        proxy_pass https://www.cctv.com/;
    }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题