通过-c标志传递nginx相对文件名

时间:2013-06-15 00:23:08

标签: nginx

nginx通过命令行接受一个参数来指定配置文件的位置:

-c filename   : set configuration file 

对于我的用例,filename必须是相对于当前工作目录的路径,但是nginx似乎总是相对于其安装位置解释filename

$ nginx -c nginx.conf
=> nginx: [emerg] open() "/usr/local/Cellar/nginx/1.4.1/nginx.conf" failed (2: No such file or directory)

是否有可能将filename的cwd相对路径传递给nginx? “不”是可以接受的答案。

1 个答案:

答案 0 :(得分:1)

在配置期间传递给--prefix的{​​{1}}的相对关系汇编,在大多数情况下很可能是configure所以它的相对性。

例如在我的机器上:

/usr收益:

$ nginx -V

请注意nginx version: nginx/1.2.6 built by gcc 4.7.2 (Ubuntu/Linaro 4.7.2-2ubuntu1) TLS SNI support enabled configure arguments: --prefix=/usr --with-http_ssl_module ... other stuff... ,因此这是--prefix=/usr相对于您的基本路径。

因此:

-c

失败:

$ nginx -t -c nginx.conf

很明显,nginx相对于$ nginx -t -c nginx.conf nginx: [emerg] open() "/usr/nginx.conf" failed (2: No such file or directory)

的值而言