大家都是怎么管理 Nginx 站点的?

2023-10-31 18:36:43 +08:00
 tlerbao

服务器上用宝塔很方便。

我本机是 Orbstack(Docker)环境

每次有新开发的项目或者要测试项目我都要

  1. 在 host 里新建 xxx.test 域名指向 127.0.0.1
  2. 新建一个站点 conf ,xxx.test.conf ,然后重启 nginx 容器

感觉有点 2B 呢,有没有快速的,或者可视化的软件实现更好的站点管理呢?

5762 次点击
所在节点    NGINX
49 条回复
zuotun
2023-11-01 01:36:10 +08:00
有域名的话用个三级子域名 A 记录指向本机 IP, 顺便还能白嫖一个一年的证书. 有证书办事会方便很多, 比如浏览器可能会自动跳 HTTPS.

没有的话就像上面说的那样, 类似 clash 可以直接通配符 hsot 解析到本机 IP, 然后可以用 mkcert 自签证书. 其实用定制的 DNS 也可以做到, 但是需要修改本机默认 DNS.

这样就不需要去改本地 host, 然后就是监听不同端口访问的事了 (泛解析也行)

另外没看懂这有多麻烦, 而且本地测试就别折磨自己了, 直装 nginx 也许更方便一些.
由于我如果要编辑配置文件的话, 终端一定早就打开了, 个人感觉是无所谓. 而且大部分情况也不会只是简单的加一个 proxy_pass, 比如:

```
location / {
proxy_http_version 1.1;
proxy_set_header "Connection" "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

proxy_pass http://vaultwarden;
}

location /admin {
auth_basic "Private";
auth_basic_user_file /path/to/.passwd;
proxy_http_version 1.1;
proxy_set_header "Connection" "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

proxy_pass http://vaultwarden;
}

```
mikaelson
2023-11-01 02:21:18 +08:00
标记一下,回头来看各路大神的回复
ccde8259
2023-11-01 02:27:38 +08:00
k8s 用户有 traefik
全靠 cccv yaml 过日子
先复制个 yaml 去申请 cert
然后再复制个 yaml 写 ingressroute…
Showfom
2023-11-01 03:16:42 +08:00
虽然 Caddy 或 Traefik 配置起来更方便,但是和 Nginx 性能对比,还是完败,不建议大流量的网站用这两货

看国外老哥们的综合性能对比测试:

https://medium.com/beyn-technology/is-nginx-dead-is-traefik-v3-20-faster-than-traefik-v2-f28ffb7eed3e
https://blog.tjll.net/reverse-proxy-hot-dog-eating-contest-caddy-vs-nginx/
wxyrrcj
2023-11-01 08:40:09 +08:00
npm
guo4224
2023-11-01 09:01:19 +08:00
apisix
tlerbao
2023-11-01 09:12:40 +08:00
@zuotun clash 通配符 host 解析到本机,这个具体怎么操作呢?
i4t
2023-11-01 09:35:46 +08:00
我用 APISIX 批量管理了 (纯 proxy 的站点,内网穿透主站)
timnottom
2023-11-01 09:50:14 +08:00
之前想用 caddy ,但是它的配置文件语法,真的让我难以继续用下去;可能先入为主 Nginx 了
lxiian
2023-11-01 11:07:44 +08:00
我是 caddy 一把嗦
adoal
2023-11-01 11:27:34 +08:00
对一般人的使用规模而言,有工夫学这些有的没的靠谱不靠谱的 manager UI 软件,手冲 nginx.conf 都冲出各种拉花了。
fsdrw08
2023-11-01 11:32:39 +08:00
traefik + consul catalog
zuotun
2023-11-01 13:20:25 +08:00
@tlerbao 官方文档有写, 如果一般是不关那这样很方便 (关了怎么上 V 站!)

给个示例, 不解释应该也能看懂.

```
hosts:
+.router.kazusa.cc: 10.0.0.1
*.clash.router: 10.0.0.1
.lan: 10.0.0.1
touma.kazusa.cc: 10.0.0.1
```

如果是用 CFW 记得主界面就有 host 选项.
Huelse
2023-11-01 13:22:00 +08:00
nginx 的配置可以说是个 DSL
blessingsi
2023-11-01 13:24:25 +08:00
既然只是在本机上进行开发测试,为什么非要用 Nginx 呢,随便起个 web 服务器不就行了。
zuotun
2023-11-01 13:27:11 +08:00
@adoal 我就是纯手冲, 包括 nginx 都是自己编译的.
当时 mainline 还不支持 HTTP/3, 自己又添加了 rtmp 玩了一下.
zuotun
2023-11-01 13:31:57 +08:00
@blessingsi 说起来 clash 也可以通过 external-ui 起一个静态网站服务器, 不过这也太怪了.
liuliancao
2023-11-01 13:35:35 +08:00
把你的步骤写成脚本也就还好吧 其他的 反而有学习成本
vacuitym
2023-11-01 13:36:55 +08:00
以前是 apisix 配合他的后台
tlerbao
2023-11-01 15:11:45 +08:00
@zuotun #33

我这 CFW 怎么没看见 host 相关的内容呢,你给的示例是改哪个文件呢?

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

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

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

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

© 2021 V2EX