zoukankan      html  css  js  c++  java
  • nginx转发https协议

    1,需求

    内网需要访问github.com,并且是按照https://github.com这样的访问方式进行访问。

    因为使用了npm install git+https://github.com/xxx/xxx.git之类的命令。

    2,编译nginx增加stream、ssl相关模块

    ./configure --prefix=/etc/nginx/ 
    --sbin-path=/usr/sbin/nginx
    --conf-path=/etc/nginx/nginx.conf
    --error-log-path=/var/log/nginx/error.log
    --http-log-path=/var/log/nginx/access.log
    --pid-path=/var/run/nginx.pid
    --lock-path=/var/run/nginx.lock
    --with-stream
    --with-stream_ssl_module
    --with-stream_ssl_preread_module
    --with-openssl=/path/to/openssl-1.0.2j
    --with-pcre=/path/to/pcre-8.38

    3,增加stream、ssl转发配置

    在nginx.conf中进行stream配置

    stream {
    
      map $ssl_preread_server_name $backend_pool {
        github.com github;
        codeload.github.com codegithub;
      }
    
      upstream github{
        server github.com:443;
      }
    
      upstream codegithub{
        server codeload.github.com:443;
      }
    
      server{
        listen 443;
        ssl_preread on;
        proxy_pass $backend_pool;
        proxy_connect_timeout 15s;
        proxy_timeout 15s;
        proxy_next_upstream_timeout 15s;
      }
    
    }

    4,本地hosts文件配置

    在中转服务器端需要配置github.com相关的hosts解析;

    在本地hosts文件中,直接将github.com解析到中转服务器;

  • 相关阅读:
    使用vs2010编译 Python SIP PyQt4
    谷歌编程指南
    【转】微策略面经相关资料
    KMP 算法
    C++ 拷贝构造函数
    虚继承 虚表 定义一个不能被继承的类
    cache的工作原理
    背包问题
    【转】C/C++ 内存对齐
    【转】 Linux/Unix 进程间通信的各种方式及其比较
  • 原文地址:https://www.cnblogs.com/stono/p/14097791.html
Copyright © 2011-2022 走看看