Chmod,php和imageupload

时间:2010-02-26 09:10:52

标签: php image file-upload chmod

我应该如何使用PHP处理图像上传?

我应该如何处理chmod设置?

实施例

我有一个名为/ image /的目录,我想上传我的所有图片。

我应该将这个目录设置为chmod 777并保留它吗?或者我每次需要上传图像时都应该通过PHP更改该文件夹上的chmod。这是正确的,还是我应该做其他事情?

5 个答案:

答案 0 :(得分:4)

正如开发者提到的那样,设置一次chmod就足够了。对该目录的所有后续写入都不会更改目录权限,除非您明确将其修改为其他位置的其他权限。

* nix服务器上目录的建议权限是755。 建议不要将权限设置为777。正如wic所提到的,它为有权访问您服务器的每个人提供了完全权限。如果您在共享主机上或与其他用户共享服务器,则会使其容易受到攻击。

还要注意PHP是如何在您的服务器上运行的。实际上,如果您运行PHP作为cgi,例如suphp,则不允许使用777目录的权限。对脚本所在目录拥有777权限将不会运行,并且在尝试执行时会导致“500内部服务器错误”。

答案 1 :(得分:2)

我建议chmoding到755

答案 2 :(得分:1)

只有运行Web服务器dameon的用户才需要该目录的写入权限。而且您当然不希望用户上传到的目录具有执行权限。

答案 3 :(得分:1)

通常,文件夹设置设置一次,就是这样。当你已经将文件夹权限设置为777时,通过PHP将文件夹权限设置为777是没有意义的。

答案 4 :(得分:1)

不,您不必每次都更改目录的权限。一旦设定,它们就可以说了。

使用777是一种过度杀伤,因为它为每个人提供了完全权限。删除'x'位并让apache(或任何人)拥有该目录。这使得无法列出文件。