zoukankan      html  css  js  c++  java
  • 【nginx】测试服务器配置内网项目转发

    本次配置是在DIND_DNS已经配置好的基础上进行:

    1、配置一个通配域名服务

    /datas/soft/openresty/nginx/conf/vhost/proxy.conf
    
    server {
    
        listen 80;
    
        server_name *.lanse1993.com;
    
        index index.html index.php;
    
        root  /datas/www;
    
     
    
        set  $passaddr  'http://$remote_addr';   # 访问的电脑IP,假如是192.168.1.234
    
        set  $passhost  '$host';
    
        rewrite_by_lua_file  '/datas/soft/openresty/nginx/conf/waf/proxy.lua';  # 解析域名,IP转发
    
        location / {
    
            proxy_pass  $passaddr;
    
            proxy_set_header Host $passhost;
    
        }
    
     
    
        access_log  /datas/logs/nginx/access_proxy.log  tpynormal;
    
        error_log   /datas/logs/nginx/error_proxy.log;
    
    }
    

      

    2、lua解析域名,指定IP

    local env = string.match(ngx.var.host, '%l+%-');
    
    if( env == "test-" ) # 比如域名: admin.test-xkjd.lanse1993.com
    
    then
    
       ngx.var.passaddr = "http://xx.xx.xx.xx"
    
    elseif( env == nil ) # 比如域名: xkjd.lanse1993.com
    
    then
    
       ngx.var.passaddr = "http://xx.xx.xx.xx"
    
    end
    
    -- ngx.log(ngx.ERR, ngx.var.host, ngx.var.passaddr, env); # 这里的日志,会输出到error_proxy.log
    

      

    3、配置本机和虚拟机的端口映射

     

    在转发的机子上,使用命令确认映射成功:curl "http://admin.site-kq.0752sc.cn/index.php?m=admin&c=public&a=login" -x 192.168.1.234.1:80

     

     

     

    得意时做事,失意时读书
  • 相关阅读:
    css 弹出框
    net stop 出现1060错误
    a href=#与 a href=javascript:void(0) 的区别
    ubuntu如何安装Mac主题
    js arguments.callee & caller的用法及区别
    js函数——setinterval和setTimeout
    highcharts简介
    highcharts柱状图和饼图的数据填充
    jqgrid的外观重绘
    laravel定时任务
  • 原文地址:https://www.cnblogs.com/lanse1993/p/12917369.html
Copyright © 2011-2022 走看看