zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Centos下Apache/Nginx使用Symlink访问外部目录出现403

2023-03-07 09:42:57 时间

错误状况:

  • 在Aapche的document root 下创建软链到其他目录时, 无法从浏览器访问, 返回403错误,日志显示错误13: Permission denied
  • Nginx配置了location 指向/etc/nginx以外的其他目录,也无法从浏览器访问, 返回403错误,日志显示错误13: Permission denied

主要检查两点

  • 软链目标目录的每一级, 都要对所有人开放执行权限, 即对目录 chmod -R 711
  • 检查selinux的状态 /usr/sbin/getenforce, 如果是enforcing, 执行 setenforce 0 关闭selinux试试能不能访问, 如果能的话, 就是目录的安全策略问题. 需要对目标目录设置
chcon -R -t httpd_sys_content_t FOLDER_NAME/
# 以及(有些情况不需要)
setsebool httpd_read_user_content=1 

错误状况:

  • Nginx中配置了upstream,通过proxy_pass 访问本机其他端口时,返回403,日志显示错误 (13: Permission denied) while connecting to upstream

检查

  • 如果关闭selinux就能访问的话,说明是selinux的问题,需要设置
# P参数代表permanent
setsebool -P httpd_can_network_connect 1

参考