栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Linux随记(三)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux随记(三)

一、nginx随记 1.1 nginx显示真实IP

proxy_set_header  Host   $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
set_real_ip_from 0.0.0.0/0;         
real_ip_header  X-Forwarded-For;    
real_ip_recursive   on;

#proxy_set_header  X-Forwarded-Host $remote_addr;
1.2 nginx使用map来作为跳转

需求:

在HK的nginx上配置一个反向内地的,因为域名没备案,
要在 proxy_set_header  Host  $host; 这个 "$host" 要等于一个在内地已备案的域名。
例如:1.xxx.com --没备案,2.ooo.com --备案
那么我在处理1.xxx.com 的反代时,host头要这样写:proxy_set_header  Host 2.ooo.com
以上的基本的情况。
---------------------------------
下面是特殊的情况:
我有多个域名,且被代理的域名要跟二级域名开头一一对应,才能访问到对应的业务,不能随便用一个已备案的 host头代替。
例如:1对1,2对2,3对3,4对4
1.xxx.com -->1.ooo.com 
2.xxx.com -->2.ooo.com 
3.xxx.com -->3.ooo.com 
4.xxx.com -->4.ooo.com

这种情况下,如果用蠢办法就是写多几个server或配置文件。但就是看能不能用Lua写mapping的映射处理掉这个逻辑。
被代理的后端逻辑和对应关系没问题的,只需要考虑在proxy机处理好,把请求转发出去就可以。

答:

#by 六子  可用自带的map来解决
map $server_name $porxy_server_name {
    1.xxx.com 1.ooo.com
    2.xxx.com 2.ooo.com
    3.xxx.com 3.ooo.com
}

server {
    server_name 1.xxx.com 2.xxx.com 3.xxx.com
    
    location / {
        proxy_pass http://$porxy_server_name;    
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/826145.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号