更改Nginx网站根目录以及导致的403 forbidden问题解决

本文介绍如何将Nginx的默认网站根目录从/usr/local/nginx/html更改为/home/fuxiao/www,并解决了在此更改后遇到的403 Forbidden错误。

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

一、更改根目录


Nginx默认网站根目录为/usr/local/nginx/html,要将它改成/home/fuxiao/www


更改方法:

vi /usr/local/nginx/conf/nginx.conf
将其中的

        location / {
            root   html;
            index  index.php index.html index.htm;
        }
改为

        location / {
            root   /home/fuxiao/www;
            index  index.php index.html index.htm;
        }
然后再将
location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
改为
location ~ \.php$ {
            root           /home/fuxiao/www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

然后重新启动Nginx,网站根目录就已经是我们的家目录下的www。

二、解决403错误

但更改完成后进行测试,访问www下的网页一直提示403 forbidden,如下图


开始以为是自己访问的网页不具有读权限,于是给网页授予了读权限,但更改后再次访问依旧是该错误,试了多种方法后发现问题出在/home/fuxiao目录的fuxiao不具备读权限,即我们普通用户起初不具备读权限,只需给该目录赋予读权限即可解决该403问题。

### 解决 Nginx 403 Forbidden 错误:文件目录权限配置 当遇到 Nginx 返回 `403 Forbidden` 错误时,这通常是由于文件或目录权限设置不当所致。为了确保 Web 服务器能够正常访问所需的静态资源,必须正确配置文件系统的权限。 #### 正确设定文件和目录权限 对于 Linux 系统而言,理想的权限分配如下: - **根目录**应具有适当的读取和执行权限以便于遍历子项;建议使用命令 `chmod 755 /path/to/root` 来赋予所有者完全控制权以及同组和其他人的只读加可进入的权利[^1]。 - **HTML 文件及其他公开文档**应该给予所有人至少有阅读的能力,可以通过运行 `chmod 644 filename.html` 设置单个文件的权限[^2]。 - 如果存在上传功能,则对应的存储路径需额外开放写入许可给特定用户或进程,比如通过 `chown www-data:www-data uploads_folder && chmod 750 uploads_folder` 调整所属关系并限制外部修改尝试[^3]。 此外,在某些情况下,默认安装后的 webroot 可能继承了过严的安全属性,像 `-rwx------` 这样的模式就会阻止任何非属主身份下的 HTTP 请求成功加载页面内容[^5]。因此,适当放宽此类约束也是必要的操作之一。 最后值得注意的是,除了调整本地磁盘上的 ACLs 外,还需确认 nginx.conf 中定义的服务端点指向确实存在的物理地址,并且该处放置的内容结构满足预期请求模式的要求——即不存在空缺索引页等问题引发间接性的授权失败现象[^4]。 ```bash # 修改整个网站根目录及其内部所有项目的一般做法 find /var/www/html -type d -exec chmod 755 {} \; find /var/www/html -type f -exec chmod 644 {} \; # 特定情况处理(例如针对上载区) sudo chown -R www-data:www-data ./uploads/ sudo find ./uploads/ -type d -exec chmod 750 {} \+ ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值