假设在windows上输入如下命令:
E:\mywamp\apache2.2\bin>E:\mywamp\nginx-1.6.2\nginx.exe -s reload
那么输入结果就是这样的:
nginx: [alert] could not open error log file: CreateFile() "logs/error.log" failed (3: The system cannot find the path specified)
2015/01/26 22:07:10 [emerg] 5164#5196: CreateFile() "E:\mywamp\apache2.2\bin/conf/nginx.conf" failed (3: The system cannot find the path specified)
解决方法就是首先cd到目录E:\mywamp\apache2.2\bin>E:\mywamp\nginx-1.6.2\
,然后运行nginx -s reload
,感觉这样太麻烦了,求教有没有更简单的方法。
nginx的-c选项可以指定配置文件的路径,所以,你可以试试,在配置文件里面指定日志文件的时候指定为绝对路径,比如E:\mywamp\nginx-1.6.2\logs\access.log(防止日志打开日志文件错误),然后执行nginx reload的时候使用配置文件的绝对路径:
不过,好像上面还有问题,都是路径方面的问题,nginx对当前路径的依赖太大。
那么就想办法在执行nginx命令前重新设定当前目录吧,Windows下的话可以用start命令,/D参数指定起始目录,这样就行。所以像这样就行了start /D E:\mywamp\nginx-1.6.2 nginx -s reload