nginx 搭建下载服务器
一: 配置 default.conf
- server {
- listen 80;
- server_name localhost;
- charset utf-8;
- #access_log /var/log/nginx/host.access.log main;
- location / {
- #root /usr/share/nginx/html;
- #index index.HTML index.htm;
- root /home/jingxiang;
- autoindex on; #开启索引功能
- autoindex_exact_size off; #关闭计算文件确切大小(单位 bytes), 只显示大概大小(单位 kb,mb,gb)
- autoindex_localtime on; #显示本机时间而非 GMT 时间
- }
二: 配置 nginx.conf
- #user nginx;
- user root root; #改为 root 用户启动
三: 403 Forbidden 的问题
困扰我的就是第三个, 有兴趣的可以看看巨厉害的 SELinux 相关信息
引起 nginx 403 forbidden 通常是三种情况: 一是缺少索引文件, 二是权限问题, 三是 SELinux 状态.
1, 缺少 index.HTML 或者 index.PHP 文件, 就是配置文件中 index index.HTML index.htm 这行中的指定的文件.
- server {
- listen 80;
- server_name localhost;
- index index.PHP index.HTML;
root / var/www; } 如果在 / var/www 下面没有 index.PHP,index.HTML 的时候, 直接访问域名, 找不到文件, 会报 403 forbidden.
2, 权限问题, 如果 nginx 没有 web 目录的操作权限, 也会出现 403 错误.
解决办法: 修改 Web 目录的读写权限, 或者是把 nginx 的启动用户改成目录的所属用户, 重启 Nginx 即可解决
chmod -R 755 / var/www
3,SELinux 设置为开启状态 (enabled) 的原因
首先查看本机 SELinux 的开启状态, 如果 SELinux status 参数为 enabled 即为开启状态
/usr/sbin/sestatus -v 或者使用 getenforce 命令检查
找到原因了, 如何关闭 SELinux 呢
1)临时关闭(不用重启)
setenforce 0
2)修改配置文件 /etc/ selinux/config, 将 SELINUX=enforcing 改为 SELINUX=disabled
vi /etc/ selinux/config Nginx 报错 403 forbidden (13: Permission denied) 的解决办法
注意: 修改配置文件需要重启系统 reboot
来源: http://www.bubuko.com/infodetail-3037393.html