用 PHP 写了一个管理本地 Nginx 网站配置文件的命令行小工具

2017-04-04 13:14:47 +08:00
 panlatent

功能暂时比较简单,主要就是列出配置文件列表和切换配置文件。原理也比较简单,建立软连接。比较适合 Nginx 网站配置比较多的情况,本人懒癌晚期。

虽然说得这么轻松,但还是写了一晚上。因为花了半天的时间在 GitHub 上寻找可用的能读取 Nginx Conf 的类库,找到的都不理想,所以暂时还没用做读取配置文件这块。

项目地址 https://github.com/panlatent/site-cli

可以直接下载 phar 文件 https://github.com/panlatent/site-cli/releases/download/1.0.0/site-cli.phar

3195 次点击
所在节点    PHP
7 条回复
sagaxu
2017-04-04 14:08:12 +08:00
一个符号链接就搞定了,意义何在?
cenxun
2017-04-04 14:15:42 +08:00
赞一个,要有生成配置文件就好了,不同分支代码版本切换
cxbig
2017-04-04 14:36:30 +08:00
这有个 shell 案例参考
http://serverfault.com/questions/424452/nginx-enable-site-command

@panlatent
1. 为何要在$HOME 多开配置?这样权限略乱,本地还好,服务器上有风险。
2. Group 那个功能独立出来有点怪,我以为你有配置好的组 cfg ,整组操作,但是看上去是扫描文件夹下的配置文件。那干嘛不直接单一使用 enable/disable 做多参数支持?支持单文件或多文件,同时用*适配所有。

@cenxun
你可以在-available 下准备多套,按需 ln 到-enabled 即可,用 Git 过于麻烦。我们服务器有.online 和.maintenance 两套配置,按需 ln 过去 reload 即可
panlatent
2017-04-04 17:37:32 +08:00
@sagaxu @cenxun

目前只是初步实现了一个 ln -s / ls 功能,后续功能会有开发,但我想看看别人会有哪些想法和需求。

+ 生成配置文件方面,准备做,但我觉得想搞一个大而全的方案不太可信,所以打算预定义一些简单的模板。
+ 另外一个功能是读取配置文件,初步做到 server 级别的 enable / disable
+ 还有想搞一搞 shell 自动补全

@cxbig

这个工具本来母殿就是为服务本地开发环境,类似 HostSwitch 。

分组组这个概念,我觉得更好管理。我觉得直接使用 * 可能会有一定危险性。在我自己的本地场景中,很少出现整个子文件夹都禁用的情况

------

这只是一个很偏门的小工具,但我觉得比单纯的命令更有趣味性
panlatent
2017-04-04 17:38:24 +08:00
@panlatent 错字, 第 3 行「可信」应为「可行」
cxbig
2017-04-04 18:06:49 +08:00
@panlatent 嗯,支持,生命在于折腾。
panlatent
2017-05-02 18:55:38 +08:00
欢迎使用和反馈,这个小工具目的只有一个:为了更懒

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

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

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

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

© 2021 V2EX