我在 CentOS7 上运行 NGINX。我想/etc/nginx
在 Linux 和 Windows 之间共享目录。
原因是,我不想每次需要更改/添加主机或尝试不同的配置时都访问该文件。为此,我将目录安装/etc/nginx
到 Windows 桌面上的一个文件夹中,如下所示:
sudo mount -t vboxsf nginx /etc/nginx
一切正常,我可以访问文件并进行编辑,但由于某种原因,NGINX 无法重新启动,而我得到的只是这个错误。
[root@localhost]# systemctl status nginx.service
â nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Fri 2017-01-06 07:02:54 EST; 17s ago
Docs: http://nginx.org/en/docs/
Process: 3096 ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf (code=exited, status=1/FAILURE)
Jan 06 07:02:54 aphrodite systemd[1]: Starting nginx - high performance web server...
Jan 06 07:02:54 aphrodite nginx[3096]: nginx: [emerg] open() "/etc/nginx/nginx.conf" failed (13: Permission denied)
Jan 06 07:02:54 aphrodite nginx[3096]: nginx: configuration file /etc/nginx/nginx.conf test failed
Jan 06 07:02:54 aphrodite systemd[1]: nginx.service: control process exited, code=exited status=1
Jan 06 07:02:54 aphrodite systemd[1]: Failed to start nginx - high performance web server.
Jan 06 07:02:54 aphrodite systemd[1]: Unit nginx.service entered failed state.
Jan 06 07:02:54 aphrodite systemd[1]: nginx.service failed.
答案1
nginx 无法读取其主配置文件,如您提供的服务状态输出所示:
Jan 06 07:02:54 aphrodite nginx[3096]: nginx: [emerg] open() "/etc/nginx/nginx.conf" failed (13: Permission denied
修复文件的所有权/模式(使用 chown、chmod)并使用不同的方法从 Windows 访问 nginx 文件夹,因为大多数类似的方法混淆了文件权限。