几个小时以来,我一直在尝试许多解决方案,但无法摆脱NGINX为静态子域提供服务时出现的403错误。
我尝试将目录中的所有权限chmod到静态文件夹,并一遍又一遍地编辑配置文件。
NGINX可以很好地为我的反向代理Node应用程序提供服务,但是可以关闭曾经在服务器中的所有静态子域。
权限:
dr-xr-xr-x root root /
drwxr-xr-x root root home
drwx--x--x ca****8sh nginx ca****8sh
lrwxrwxrwx ca****8sh ca****8sh www -> public_html
drwxr-x--- ca****8sh ca****8sh public_html
drwxr-xr-x nginx nginx residenza******.******ano.ch;
配置文件:
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name residenza******.******ano.ch;
root /home/ca****8sh/www/residenza******.******ano.ch/;
location / {
#try_files $uri $uri/ =404;
index index.html;
#autoindex on;
#autoindex_exact_size off;
}
[继续进行SSL设置]
我还尝试过调整一些功能,例如启用自动索引,但无济于事。
我感到绝望,请帮忙!
答案 0 :(得分:0)
检查nginx.conf的第一行中正在使用哪个用户nginx。它应该是nginx或www-data。然后运行此命令。如果用户是nginx,则用nginx替换www-data
chown -R www-data /home/ca****8sh/www/residenza******.******ano.ch/
如果您像CentOS一样使用SELinux,也请运行以下命令:
sudo setsebool -P httpd_can_network_connect on
chcon -Rt /home/ca****8sh/www/residenza******.******ano.ch/
答案 1 :(得分:0)
我已经通过将全局nginx用户更改为更高级别的用户来进行处理。这就是导致许可证问题的原因。