我试图在我的Windows开发环境中设置nginx。 我找不到如何在nginx查找(链接到)活动虚拟主机configuration的Linux上创build类似于“启用网站”的内容。
有没有办法做一个类似的目录与实际configuration文件和nginx扫描该目录的快捷方式? 还是有办法挂钩一个虚拟主机configuration,而不是复制主机configuration到nginx.conf?
亲爱的,马克
nginx的一些Linux软件包所使用的“网站启用”方法利用include
指令,它理解shell通配符,参见http://nginx.org/r/include 。 你也可以在你自己的配置中使用它,例如
http { ... include /path/to/sites/*.conf; }
请注意,虽然这种方法可能非常混乱(特别是,除非明确使用default_server
否则很难确定哪个服务器是默认服务器)。
在Windows中,您必须提供配置文件所在目录的完整路径。 有两个文件需要更新:nginx.conf,它告诉nginx在哪里找到网站,localhost.conf,这是一个网站的配置。
假定nginx安装在C:\nginx
。 如果安装目录位于另一个路径,则必须相应地更新该路径,无论它出现在以下两个配置文件中。
位置: C:\nginx\conf
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; include C:/nginx/conf/sites-enabled/*.conf; }
位置: C:\nginx\conf\sites-enabled
server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
下面的工作对我来说,但只有后,我把我的主nginx exe文件夹从c:/Program Files (x86)/nginx-1.7.0
到c:/nginx-1.7.0
(因为我认为它不处理空格文件路径):
http { ... include "f:/code/mysite/dev-ops/nginx/dev/mysite.conf"; }