如何把本地的 localhost:3000 映射到一个 https 的 .local 网址?

2023-08-26 19:18:32 +08:00
 hanguofu
来国外的某个论坛的问题,看看 v2 的方案?
1825 次点击
所在节点    问与答
15 条回复
Trim21
2023-08-26 19:20:54 +08:00
你是要内网穿透还是反向代理?
zcf0508
2023-08-26 19:32:51 +08:00
caddy2 反带
gzlock
2023-08-26 19:44:11 +08:00
cloudflare 的 tunnel
expy
2023-08-26 19:53:31 +08:00
.local 是保留字吧。
yoa1q7y
2023-08-26 20:23:57 +08:00
假设地址为 https://dev.local

使用 https://github.com/FiloSottile/mkcert 生成自签名证书

```
mkcert dev.local
```

nginx 配置

```
server {
listen 443 ssl http2;
server_name dev.local;

ssl_certificate /usr/local/etc/nginx/certs/dev.local.pem;
ssl_certificate_key /usr/local/etc/nginx/certs/dev.local-key.pem;

location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header X-NginX-Proxy true;
proxy_cache_bypass $http_upgrade;
proxy_http_version 1.1;
proxy_redirect off;

add_header Cache-Control no-cache;
}
}
```

修改 hosts

```
127.0.0.1 dev.local
```
JensenQian
2023-08-26 20:25:38 +08:00
cloudflare tunnel
muxinqi
2023-08-26 22:31:08 +08:00
TL;DR
1. mkcert 生成 CA 和证书
2. mitmproxy 一键本地反向代理
3. 配置 Local DNS Mapping (Hosts/Surge)

详细步骤 https://web.archive.org/web/20230826141958/https://notes.muxinqi.com/using-https-for-local-development
Mutoo
2023-08-26 22:57:01 +08:00
用 mkcert 或者纯手工打造自签名证书,教程: https://blog.mutoo.im/2022/04/self-signed-ssl-cert/
jim9606
2023-08-26 23:08:16 +08:00
.local 是 mDNS 保留的顶级域名。Windows 虽然支持但限制在 UWP 下使用。
开发用我建议用别的域名,写进 hosts 或者就直接用自有域名填一个 127.0.0.1 的 A 记录。因为某些解析器会固定使用 mDNS 解析.local 域名而不是传统 DNS 。
kkwa56188
2023-08-26 23:16:47 +08:00
推上看到了, 短的答案:用 Caddy
bugcoder
2023-08-26 23:24:21 +08:00
借楼问:Mac 上面的是自带的吗? iPad 和 Mac 局域网就是用.local 的网址
qfdk
2023-08-27 08:54:55 +08:00
mac 自带不是.local 嘛
qfdk
2023-08-27 08:55:06 +08:00
SimonOne
2023-08-27 21:35:08 +08:00
@bugcoder
@qfdk

macOS 上的设备.local 就是 mDNS
https://zhuanlan.zhihu.com/p/45256302?utm_id=0
bugcoder
2023-09-06 14:02:47 +08:00
@SimonOne 懂了,多謝~~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/968509

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX