nginx配置静态资源,访问返回403

本文介绍了一种常见的Nginx权限配置错误及其解决方案。当Nginx试图访问指定目录但遇到Permission denied错误时,可以通过调整nginx.conf文件中的用户设置来解决此问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置内容如下

location ^~ /static/ {

       root /home/wills/;

}


nginx是由root用户安装创建,配置是没有问题的,但是error.log里提示

Permission denied


将nginx.conf头部的注释行#user  nobody;

改为user root即可


参考文章:http://blog.youkuaiyun.com/ngcsnow/article/details/39394991

### 配置 Nginx 以允许公网访问静态文件 为了使 Nginx 能够提供静态资源给公网用户,需确保正确配置Nginx 并指定了静态资源的位置。以下是具体方法: #### 修改默认配置文件 打开并编辑位于 `/etc/nginx/nginx.conf` 或者更常见的站点特定配置文件通常存放在 `/etc/nginx/sites-available/default` 中的内容[^1]。 对于简单的静态网站部署,可以在 `server` 块内定义如下所示的 `location` 设置来指向静态文件目录: ```nginx server { listen 80; server_name example.com; # 替换成实际使用的域名 location / { root /usr/share/nginx/html/; index welcome.html index.html index.htm; } } ``` 这段代码设置了当接收到根路径请求时返回指定位置下的欢迎页面或其他索引页[^2]。 #### 处理 SSL/TLS 和域名解析问题 如果遇到像描述中的情况——即内部网络能正常加载而外部不可达,则可能是由于SSL证书丢失或DNS记录错误引起的问题[^3]。建议确认以下几点: - DNS A/AAAA 记录是否正确指向服务器 IP 地址; - 如果使用 HTTPS 协议传输数据,请检查是否有有效的 SSL 证书安装于 Nginx 上,并且其配置无误; - 确认防火墙规则已开放必要的 HTTP(S) 流量端口(通常是 TCP 80 及 443),并且这些端口被正确转发至运行 Nginx 的主机上; 完成上述调整之后重启 Nginx (`sudo systemctl restart nginx`) 来应用更改即可让公网顺利获取到所需的静态资源
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值