我在Windows上安装了nginx,并在我的http根目录中放入了一个nginx.conf
,但似乎没有包含此路径,我可以通过包含c:/http_default/nginx.conf
来包含它,但我希望nginx自动将当前工作目录的nginx.conf
包括在内。例如:对于http://mydomain.com/test/index.php
,我想要包含c:/http_default/test/nginx.conf
。如何配置nginx读取当前工作目录中的nginx.conf?
4
A
回答
2
你最好的选择是首先有标准的目录结构(例如c:\ www \ example.com)。然后在每个站点目录中有一个用于根目录和conf文件的目录。然后你可以在你的主要nginx.conf中使用这个文件http {}部分。
include c:/www/*/conf/nginx.conf;
然后,当您启动或向nginx发出重新加载时,每个站点的nginx.conf都会加载。所以如果你有一个网站的这两条路径,你就设置好了。
c:\www\example.com\conf\
c:\www\example.com\htdocs\
Web文件进去的htdocs和nginx.conf进去的conf。就那么简单。
我从来没有在Windows上使用nginx,所以我假设它的conf使用正斜杠,如* nix。
2
有一个叫做incron的程序,是一个“inotify cron”系统。它以非常低的成本检测文件更改:inotify。
安装incron,例如,
apt-get install -y incron
编辑incrontab
incrontab -e
添加
/var/www/site1/nginx.conf IN_MODIFY,IN_NO_LOOP /usr/local/sbin/nginx-reload.sh
调整自己的根目录,它是更安全设置Web根目录到网站名称/服务器,并把这个nginx.conf中的用户名DIRshell脚本使用
flock
等待前面的重装flock -x "/var/lock/nginx-reload" -c nginx-reload-worker.sh logger -t "nginx-reload[$$]" "Reloading OK"
工人脚本由5秒
sleep 5 service nginx reload || error 2 "nginx reload error"
看到这一切在NGINX auto reload gist
相关问题
- 1. 配置nginx的nginx.conf文件
- 2. 如何设置当前工作目录?
- 3. 获取cmd.exe的当前工作目录
- 4. SWI Prolog更改工作目录/获取当前工作目录?
- 5. 如何获取IronRuby中的当前工作目录?
- 6. 如何用PHP opendir读取当前目录之外的目录?
- 7. WebStorm Dart设置当前工作目录
- 8. Ocaml:设置当前工作目录?
- 9. 如何更改当前工作目录
- 10. 如何获得当前工作目录
- 11. XSL,获取当前工作目录
- 12. 选项获取当前工作目录
- 13. 如何在Vim中设置工作/当前目录?
- 14. 如何在Python sh模块中设置当前工作目录?
- 15. 如何在Python中自动设置当前工作目录
- 16. 如何在Dart中设置当前工作目录?
- 17. 如何在GWT中获取当前工作目录Java
- 18. 将vim当前工作目录设置为当前项目根目录或当前文件的目录
- 19. SHAutoComplete&当前工作目录?
- 20. vimrc - 当前工作目录
- 21. 当前工作目录中的项目特定.lldbinit未被Xcode读取
- 22. 如何获取Grails/Tomcat Webapp的当前工作目录?
- 23. 如何获取当前工作目录的Git哈希值?
- 24. 如何将当前工作目录设置为脚本的目录?
- 25. Nginx配置:autoindex子目录
- 26. 如何使用python 3获取当前工作目录?
- 27. 如何获取安装/安装项目中的当前工作目录
- 28. setwd()在当前工作目录中
- 29. 在java maven项目中获取当前工作资源目录
- 30. nginx.conf中的gzip配置
每延迟重装我不明白你为什么会需要这样做。为什么不只是为了测试而设置一个位置块,其行为有所不同?另一个解决方案是有一个不同的子域(然后nginx可以使用不同的虚拟服务器来处理测试请求) – matzahboy
我正在ab大项目中工作,它与Apache一起工作。它的文件夹中有许多.htaccess文件,因此它是一个CMS并有插件,每个插件可能有它自己的.htaccess,我可以将.htaccess翻译成nginx.conf,但我需要将每个nginx放到它的文件夹中。 – IVIR3zaM
.htaccess不会转换为新的nginx.conf。它转换为一个nginx位置块。Nginx允许你根据特定位置(基本上插入文件的内容)包含其他配置,但它不允许你有多于1个主配置。 – matzahboy