今天在windows下弄nginx遇到几个坑。
首先是windows下的安装。应该参考官网:http://nginx.org/en/docs/windows.html
下载、解压后,nginx的启动是在解压路径上输入start nginx。如果没有启动nginx,会导致在后面输入nginx -s quit, nginx -s stop 或nginx -s reload时遇到如下错误:
nginx: [error] OpenEvent("Global\ngx_reload_5744") failed 或
nginx: [error] OpenEvent("Global\ngx_quit_5744") failed 或
nginx: [error] OpenEvent("Global\ngx_stop_5744") failed
下一个坑是在写配置文件conf时,windows下的路径一般是用“\”来表示的,例如c:\nginx\conf,但是在这里如果遇到\n就会出错,所以最好用\\或者/来替代\,写成c:/nginx/conf。这样在测试conf文件时就不会出现如下错误提示了:
The filename, directory name, or volume label syntax is incorrect
最后一个大坑是配置文件nginx.conf的重新加载。在项目中我们有时需要对配置进行重写,但是在重新加载后发现还是之前的配置文件在生效。也就是说nginx -s reload这个指令并没有生效。没办法,最后我只能重启电脑,然后再start nginx,这样才让新的配置文件生效。。。我当时也在任务管理器中把所有的nginx进程干掉,然后再重新nginx,但是配置文件依然没生效。这个我查了一下也没有很好的解释。只能先这么用了。也请高手指点。