logo资料库

nginx正向代理https和非80端口配置文档.pdf

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
系统  centos7.6 1,安装必要的插件 yum install wget lrzsz  libcurl   curl curl-devel  libpng  libpng-devel   freetype-devel    libxslt libxslt-devel   unixODBC  OpenIPMI-devel  libssh2-devel   libevent-devel java- devel  unixODBC-devel net-snmp-devel  pcre pcre-devel openssl openssl-devel gcc  gcc-c++ ncurses-devel perl zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo- devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel  libxslt-devel libmcrypt-devel mhash mcrypt fping net-snmp-devel unixODBC-devel  OpenIPMI-devel java-devel wqy-microhei-fonts libevent libevent-devel  -y 2安装准备,创建用户,下载安装包 代理https需要添加ngx_http_proxy_connect_module模块(如果不访问https端口无需此 步骤) 创建用户www  创建存放安装软件文件夹tools   创建安装软件目录 application useradd -s /sbin/nologin -M www mkdir -p /tools                                mkdir -p /application cd /tools wget http://nginx.org/download/nginx-1.10.3.tar.gz wget https://github.com/chobits/ngx_http_proxy_connect_module/archive/master.zip tar -xzvf nginx-1.10.3.tar.gz   unzip master.zip 进入nginx文件夹并安装connect补丁 yum install -y patch cd nginx-1.10.3 patch -p1 < /tools/ngx_http_proxy_connect_module- master/patch/proxy_connect.patch  后面是ngx_http_proxy_connect_module模块具体的路径 cd /tools wget ­c http://luajit.org/download/LuaJIT­2.0.4.tar.gz tar xzvf LuaJIT­2.0.4.tar.gz cd LuaJIT­2.0.4 make install PREFIX=/usr/local/luajit # 添加环境变量 cat >> /etc/profile <
export LUAJIT_LIB=/usr/local/luajit/lib export LUAJIT_INC=/usr/local/luajit/include/luajit­2.0 eof source /etc/profile   ln ­s /usr/local/luajit/lib/libluajit­5.1.so.2 /lib64/libluajit­5.1.so.2  cd /application  wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz tar ­xzvf v0.3.0.tar.gz wget https://github.com/openresty/lua­nginx­module/archive/v0.10.8.tar.gz tar ­xzvf v0.10.8.tar.gz cd /tools/nginx­1.10.3 3,编译安装nginx ./configure \  --user=www --group=www \ --prefix=/application/nginx \ --with-http_realip_module \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_flv_module \ --with-http_gzip_static_module \ --with-cc-opt=-O3 \ --with-stream \ --add-module=/application/ngx_devel_kit-0.3.0 \ --add-module=/application/lua-nginx-module-0.10.8  \ --with-http_stub_status_module \ --error-log-path=/var/log/nginx/logs/error.log \ --http-log-path=/var/log/nginx/logs/access.log \ --http-log-path=/var/log/nginx/logs/access.log \ --add-module=/tools/ngx_http_proxy_connect_module-master make make install
安装完成 /application/nginx-1.10.3/sbin/nginx  -t  检查  成功 配置nginx.conf文件 server { listen 8888; # dns resolver used by forward proxying resolver 8.8.8.8; # forward proxy for CONNECT request proxy_connect; proxy_connect_allow 443 563; proxy_connect_connect_timeout 10s; proxy_connect_read_timeout 10s; proxy_connect_send_timeout 10s; # forward proxy for non-CONNECT request location / {         if ($http_host ~ "(:(\d){4})$"){         set_by_lua $port "                   local host = ngx.req.get_headers()[\"host\"];                   local port = string.sub(host,-4);                   return port ";         set $cookie_passport $port ;         proxy_pass http://$host:$cookie_passport$request_uri;         }         if ($http_host ~ "(:(\d){3})$"){         set_by_lua $port "                   local host = ngx.req.get_headers()[\"host\"];                   local port = string.sub(host,-3);                   return port ";         set $cookie_passport $port ;         proxy_pass http://$host:$cookie_passport$request_uri;         }         if ($http_host ~ "(:(\d){2})$"){
        set_by_lua $port "                   local host = ngx.req.get_headers()[\"host\"];                   local port = string.sub(host,-2);                   return port ";         set $cookie_passport $port ;         proxy_pass http://$host:$cookie_passport$request_uri;         }         if ($http_host !~ :){         proxy_pass http://$host$request_uri;         } } } 启动nginx /application/nginx-1.10.3/sbin/nginx
分享到:
收藏