PHP抛出权限拒绝目录中的文件错误

最近我把一个站点从Ubuntu移到了Centos,并开始注意到用户在执行事务之后显示了一个空白的响应页面。 Apache日志有这些消息。

[Mon Jul 15 02:15:58 2013] [error] [client 173.24.242.72] PHP Warning: file_put_contents(/home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/fonts/php_Helvetica.afm): failed to open stream: Permission denied in /home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/class.pdf.php on line 2354 [Mon Jul 15 02:15:58 2013] [error] [client 173.24.242.72] PHP Warning: file_put_contents(/home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/fonts/php_Helvetica-Bold.afm): failed to open stream: Permission denied in /home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/class.pdf.php on line 2354 [Mon Jul 15 02:15:58 2013] [error] [client 173.24.242.72] PHP Warning: file_put_contents(/home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/fonts/php_Helvetica-Bold.afm): failed to open stream: Permission denied in /home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/class.pdf.php on line 2354 [Mon Jul 15 02:15:58 2013] [error] [client 173.24.242.72] PHP Warning: file_put_contents(/home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/fonts/php_Helvetica-Bold.afm): failed to open stream: Permission denied in /home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/class.pdf.php on line 2354 [Mon Jul 15 02:15:58 2013] [error] [client 173.24.242.72] PHP Warning: file_put_contents(/home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/fonts/php_Helvetica.afm): failed to open stream: Permission denied in /home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/class.pdf.php on line 2354 [Mon Jul 15 02:15:58 2013] [error] [client 173.24.242.72] PHP Warning: file_put_contents(/home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/fonts/php_Helvetica.afm): failed to open stream: Permission denied in /home/sridhar/public_html/mysite.com/public/pgway_icici/dompdf/lib/class.pdf.php on line 2354 

检查每个这些目录ls -lZ我有以下输出

 [root@i-8941-35408-VM pgway_icici]# ls -lZ dompdf -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t ChangeLog -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t dompdf_config.inc.php -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t dompdf.php -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t HACKING drwxr-xr-x 1001 1001 user_u:object_r:httpd_sys_content_t include -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t INSTALL drwxr-xr-x 1001 1001 user_u:object_r:httpd_sys_content_t lib -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t LICENSE.LGPL -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t load_font.php -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t README -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t TODO [root@i-8941-35408-VM pgway_icici]# ls -lZ dompdf/lib -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t class.pdf.php drwxr-xr-x 1001 1001 user_u:object_r:httpd_sys_content_t fonts drwxr-xr-x 1001 1001 user_u:object_r:httpd_sys_content_t res [root@i-8941-35408-VM pgway_icici]# ls -lZ dompdf/lib/fonts -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Courier.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Courier-Bold.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Courier-BoldOblique.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Courier-Oblique.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t dompdf_font_family_cache -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t dompdf_font_family_cache.dist -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Helvetica.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Helvetica-Bold.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Helvetica-BoldOblique.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Helvetica-Oblique.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Times-Bold.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Times-BoldItalic.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Times-Italic.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t Times-Roman.afm -rw-r--r-- 1001 1001 user_u:object_r:httpd_sys_content_t ZapfDingbats.afm 

不知道什么可能是错的。 希望有任何build议来解决这个问题。

这些文件不是由apache所有,所以,你需要chmod字体/ *。afm文件到+ w到其他为了给apache写入权限( chmod 666 fonts/*.afm )。 或者,将所有权交给apache( chown apache fonts/*.afm )。

也可能要为所有这些设置适当的文件所有权。 因为它似乎无法find这些用户#1001的用户名。