我想从一个主目录中读取一些文件,我可以从我可以信任的其他服务器获取推送文件。
我的 index.php 在/var/www/html/index.php
我想通过 php file_get_contents 读取的文件位于/home/user123/subdir/info.txt
我得到的错误:
file_get_contents(/home/user123/subdir/info.txt): failed to open stream: Permission denied (2)
aureport --avc
显示拒绝错误
05.09.2014 14:17:16 httpd system_u:system_r:httpd_t:s0 6 dir getattr unconfined_u:object_r:user_home_dir_t:s0 denied 53606
到目前为止我尝试了什么(没有成功):
chcon -R -t httpd_sys_script_rw_t /home/user123/*
chcon -R -t httpd_user_content_t /home/user123/*
将目录添加到 apache userdir config ( /etc/httpd/conf.d/userdir.conf
)
<Directory "/home/user123/*">
AllowOverride None
Require all granted
</Directory>
我错过了什么/我做错了什么?
系统信息:
Server version: Apache/2.4.6 (CentOS)
PHP version 5.4.16
SELinux enforcing
CentOS 7
UPDATE
授予 apache 读取 homedir 的权限解决了 selinux 的拒绝错误
setsebool -P httpd_enable_homedirs on
但是那个file_get_contents(/home/user123/subdir/info.txt): failed to open stream: Permission denied (2)
还在...