You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 20.04.3 LTS下XAMPP Apache改htdocs路径后403禁止访问求助

Apache修改自定义htdocs路径后403禁止访问解决方案

1. 修正Apache目录访问配置

仅修改DocumentRoot参数无法生效,必须同步更新对应路径的<Directory>权限规则,Apache 2.4版本使用Require all granted作为允许访问的规则,不要使用旧版本的Allow from all语法。参考配置如下:

# 将路径替换为你的自定义htdocs实际路径
DocumentRoot "/home/yourname/cloud_sync/htdocs"
<Directory "/home/yourname/cloud_sync/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

修改配置后重启Apache服务生效:

  • CentOS/RHEL系:systemctl restart httpd
  • Debian/Ubuntu系:systemctl restart apache2

2. 检查目录层级权限

Apache需要访问路径所有上层目录的执行权限才能遍历到目标htdocs目录,仅给htdocs本身设置权限无效。假设你的自定义路径为/home/yourname/cloud_sync/htdocs,需要给上层目录授予执行权限:

chmod o+x /home/yourname /home/yourname/cloud_sync

再将htdocs目录的所有者修改为Apache运行用户,保证读权限:

  • CentOS/RHEL系:chown -R apache:apache /path/to/your/htdocs
  • Debian/Ubuntu系:chown -R www-data:www-data /path/to/your/htdocs

3. 排查SELinux访问限制

90%以上设置完文件权限仍报错的场景,都是SELinux限制导致,Linux发行版默认开启的SELinux会拦截Apache对非默认站点目录的访问请求,即使设置777权限也无法绕过。
临时测试可执行命令关闭SELinux:
setenforce 0
刷新页面如果可以正常访问,即可确认是SELinux问题,执行以下命令给自定义目录添加SELinux访问规则,永久生效:

chcon -R -t httpd_sys_content_t /path/to/your/htdocs
semanage fcontext -a -t httpd_sys_content_t "/path/to/your/htdocs(/.*)?"
restorecon -Rv /path/to/your/htdocs

内容的提问来源于stack exchange,提问作者Rabie_Rabit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 06:36:02