2010-09-24 62 views
0

我最近安装了FC13,并试图在我的PHP代码中编写一个机制,将收集的数据缓存到特定目录中(对于我们来说,我们称之为/ var/www/html/_php_resources /高速缓存)。PHP写权限 - FC13

我将文件复制到/ var/www/html目录,然后对新数据运行chown -R apache:apache /var/www/html/*chmod a+w /var/www/html/_php_resources/cache。就目前而言,我只是为了方便而使用全局写入权限。稍后我将调整权限。

当我尝试使用chmodmkdir PHP函数我风了:在/var/www/html/_include/php/CacheInit.php

拒绝的权限:

警告命令:chmod()

警告命令mkdir():权限/var/www/html/_include/php/CacheInit.php

否认

现在,当我禁用SELinux时,一切正常。问题是我宁愿而不是来禁用SELinux,并且实际上获得正确设置的权限,以便我可以将它移植到某个没有这种显式控制的服务器上。

举个例子:我的个人站点主机允许我设置对目录的读写权限,但不允许SELinux策略更改。


供参考:

  • UNAME -r = 2.6.34.7-56.fc13
  • * PHP -version * = PHP 5.3.3
  • 转速-qa | grep的httpd的 =的httpd-2.2.16-1.fc13

有没有人有什么建议?

+0

/var/www/html/_include有什么权限? – luckytaxi 2010-09-24 14:24:40

+0

这是F13,而不是FC13(我认为自F7以来就像这样,因为Fedora和核心存储库已合并) – greg0ire 2010-09-24 14:27:10

+0

这可能是世界上可写的权限。由于这个文件夹是由apache do'chmod aw/var/www/html/_php_resources/cache'和'chmod o + w/var/www/html/_php_resources/cache'拥有的......也要确保Apache运行为“ apache“而不是”httpd“ – Cfreak 2010-09-24 14:30:17

回答

1

我有同样的问题,试图从PHP mkdir。没有这么多关于谷歌的信息,但这是我发现的,我想这是正确的解决方案。必须标注apache应该创建目录的目录。

标签应该是“httpd_sys_script_rw_t”我发现的信息在这里:http://docs.fedoraproject.org/en-US/Fedora_Core/5/html/SELinux_FAQ/index.html#id672528

下面是如何标记目录:chcon -R -t httpd_sys_script_rw_t <dir> 参考这里的某个地方:http://www.centos.org/docs/5/html/Deployment_Guide-en-US/rhlcommon-chapter-0017.html

希望这有助于有人在那里。