在局域网使用.local 的正确姿势是什么 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
juggtt213
V2EX    问与答

在局域网使用.local 的正确姿势是什么

  •  
  •   juggtt213 2023-04-14 17:30:07 +08:00 2122 次点击
    这是一个创建于 910 天前的主题,其中的信息可能已经有所发展或是发生改变。

    启动了 avahi 服务以后发现有点设备上使用起来有些问题,

    首先是在安卓上使用 Chrome 无法访问devicename.local,我在 这个帖子的 2022 年的回复中看到好像安卓已经支持了.local ,但是在我的设备上似乎还是不行

    然后用 Safari 访问.local 域名的时候,我发现访问//中的文件是正常的,但是我在设置了以下形式的反向代理以后

    server{ listen 80; server_name devicename.local; index index.php index.html index.htm; location /fb/ { proxy_pass http://127.0.0.1:8080/; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } 

    访问devicename.local/fb的时候在 Safari 上会直接 404 ,我看到苹果的帮助文件写到过.local 可能无法正常访问 链接

    但是电脑上的 Chrome 和 Edge 是正常的,而且 Safari 还是能打开默认的/下的页面

    总体用下来感觉很混乱,所以想问一下是不是我的使用姿势不太对?正确的使用方法应该是怎么样的

    7 条回复    2023-04-16 16:51:15 +08:00
    AoEiuV020CN
        1
    AoEiuV020CN  
       2023-04-14 18:02:36 +08:00
    感觉不好使,我也试过一阵子就放弃了,
    最后还是 dhcp 静态分配 ip 使用,
    少数提供 web 服务的设备给个二级域名指过去,
    device name 靠不住,
    ksmagi
        2
    ksmagi  
       2023-04-14 18:05:02 +08:00
    location /fb/
    访问 devicename.local/fb 的时候

    404 这不是你 nginx 配置问题吗……
    juggtt213
        3
    juggtt213  
    OP
       2023-04-14 18:06:43 +08:00 via iPhone
    @ksmagi 在别的浏览器上可以正常访问,我在 vps 上这么配也没问题
    juggtt213
        4
    juggtt213  
    OP
       2023-04-14 20:46:02 +08:00
    不知道是不是 safari 处理.local 的时候顺序和正常网址不同,我发现当请求到 nginx 的时候已经丢失了 host 那个部分,所以无法和 server_name 匹配。如果我把上面的 server_name 改成 _ ,来自 Safari 的请求就能正常匹配我的反代规则
    billlee
        5
    billlee  
       2023-04-14 22:36:24 +08:00
    主要是很多框架不走 libc 的名字服务,比如 golang, nodejs, wsl. 对这种要起一个支持转发到 libc 的 dns 缓存服务器,然后把系统 dns 配置指向它才好用。
    julyclyde
        6
    julyclyde  
       2023-04-15 11:37:04 +08:00
    @juggtt213 proxy set header 啊
    themiscloud
        7
    themiscloud  
       2023-04-16 16:51:15 +08:00
    完全可以不用 .local 域名,用自定义域名

    个人真实在用案例小分享(比如用的域名是 nas.dev ):
    1 、dnsmasq (operwrt 路由自带) 域名泛解析到 Nginx Proxy Manager(NPM) 机器上:

    /etc/dnsmasq.d/nas.dev.conf
    address=/nas.dev/192.168.1.xxx

    2 、NPM 上配置服务转发

    3 、mkcert 生成一个自制的 nas.dev 泛域名证书

    4 、(可选)在 NPM 中根据需要配置 nas.dev 泛域名证书

    5 、(可选)在电脑或手上信任 nas.dev 泛域名证书
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1027 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 22ms UTC 18:31 PVG 02:31 LAX 11:31 JFK 14:31
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86