Nginx 无法处理软链接作为网站主目录的情况

近日我将本站点的服务器从北京迁移到了广州。在迁移的过程中,我发现 Nginx 无法处理软链接作为网站主目录的情况。

例如,我在 Dropbox 备份了服务器的网站主目录,位置在 /root/Dropbox/var/www.

我使用这条命令为其创建一个软链接:

ln -s /root/Dropbox/var/www /var/www

修改目录和软链接的所有者以便 nginx 可以读取和执行:

chown -h www-data:www-data /var/www

chown -R www-data:www-data /root/Dropbox/var/www

然后,修改 nginx 配置文件中 sites-enabled 的网站,把其配置中的主目录设定为 /var/www

随后运行,发现 nginx 报告 500 错误,查看 nginx 日志 /var/log/nginx/error.log,发现其中有这样的话:

13: Permision Denied 

经过仔细检查,我认定无论如何设置权限, nginx 都无法处理软链作为主目录的情况。

当前页阅读量为: