我的服务器上有很多 Vhost,我正在寻找一种方法来轻松配置 Url 重写,而无需打开 Putty、通过 SSH 连接并使用 vim 进行编辑。
是否可以将重写规则放在我的 www 文件夹中的文件中,并每 5-10 分钟重新加载一次 Nginx conf?
我不想要类似 htaccess 的行为。只想将所有重写规则放在我的项目文件夹中(用于 SVN)。
提前致谢(抱歉我的英语不好)!
答案1
Nginx 配置文件有一个include
指令,因此您可以在重写规则当前所在的配置文件中执行如下操作:
include /srv/http/path/to/somefile.nginx;
接下来以 root 身份配置一个 cronjob 来执行 /etc/init.d/nginx 重新加载 - 或者以任何方式让您的 init 脚本重新加载 nginx 配置 - 每 15 分钟或每小时左右一次。
如果您对将配置文件放到应在的位置的唯一不满在于必须使用 vim 来编辑它们,那么您也可以使用 Linux 上的 sshfs 或 Windows 上的 winscp 通过 SFTP 或 SCP 登录,然后使用您最喜欢的 GUI 编辑器编辑 /etc 中的配置文件。
答案2
您可以使用include
将另一个文件作为配置的一部分,这意味着您可以将所有 vhosts 配置放入其中。当然,您可以指定文件的路径,这意味着它可以存储在系统上的任何位置。