我已经安装了Centos5,安装了web服务器并设置了虚拟主机。主机基本上是这样设置的:
> adduser user1
> mkdir -p /home/user1/public_html/domain1.com/{public,private,log,cgi-bin,backup}
> chmod -R 755 /home/user1/public_html/
我在httpd.conf中添加了一个VirtualHost
条目,如下所示:
<VirtualHost *:80>
#Blah blah blah
DocumentRoot /home/user1/public_html/domain1.com/public
#Blah blah blah
</VirtualHost>
因此,apache可以很好地准备目录,但由于权限被拒绝,上传文件时出现问题。脚本语言是PHP。
如何允许文件上传而不进行所有777更改?
chown目录以匹配Apache配置的用户名/组名,并检查PHP将其上传的放在哪里
Apache的用户/组由User
和Group
.conf选项定义,PHP的上传目录由upload_tmp_dir
.ini选项指定。
将所有文件夹设为755,并将所有者更改为运行apache的用户。通常在Centos中应该是httpd
将文件上传到除docroot 之外的其他位置