如何动态重新加载nginx配置

Mar*_*ijn 4 nginx sftp .htaccess

我目前正在尝试为具有生产、测试​​和开发阶段的域设置 Nginx。每个都带有自己的部分 Nginx 配置文件,并进行了重写。

生产和测试阶段设置为 Git 存储库的分支,并在 Git 的 post-receive 挂钩中自动重新加载这些配置。这一切都很好。

开发阶段我想使用 Netbeans 的“SFTP-on-save”使用 SFTP 传输,因为我不需要在这个粒度上进行版本控制,而且它更直接一点。但是,在这里我没有像 git 的 post-receive hook 这样的东西来触发 Nginx 在上传时重新加载配置。

在 Apache 中,.htaccess 文件只会动态加载。Nginx 中是否有类似的东西和/或我如何模拟它?理想情况下是一种仅在更改时立即重新加载配置文件的解决方案。

cjc*_*cjc 7

如果您不能使用 post-receive hook,也许您可​​以使用inotify来监视 nginx 配置中的更改。

在这种情况下,您将使用incrondincrontab设置对指定文件的监视以及当这些文件更改时要采取的操作。像这样的东西incrontab

/etc/nginx/nginx.conf IN_MODIFY /etc/init.d/nginx reload
Run Code Online (Sandbox Code Playgroud)

这是incrontab手册页。您应该能够找到使用inotify适合您的配置的工具集的其他文档和示例。