我正在使用Zend_Form_Element_File()编写文件上传。我在users
目录中创建了一个名为public
的目录。当我加载文件时,我收到错误,说找不到页面。我检查了目录,发现权限是drwxr-xr-x
。因此,我将权限更改为drwxrw-rw-
并再次加载页面。页面正确加载。但是当我上传文件时,它会再次产生错误。所以我最终将权限更改为drwxrwxrwx
,一切正常。
我的问题是,我是否按照其他人正常做的方式行事?我发现制作目录可执行文件很奇怪。
有人可以解释我是否正确吗?我只是在学习Zend框架。
答案 0 :(得分:4)
如果程序应该能够“输入”,则目录必须才能执行。输入目录基本上意味着访问该目录下的任何文件/目录。
对文件夹进行“读取”访问允许您列出其内容 - “写入”访问的作用非常明显。
但是,出于安全原因,您应该检查drwxrwx---
(770
)是否不够;通常,您的用户和网络服务器共享一个公共组。如果是这样的话,就没有必要提供对“世界”的任何访问权。
以与您相同的用户身份运行脚本会更好 - 通过使用不会太难的fastcgi,但如果您在共享主机上,则通常没有必要的访问权限来执行此操作。 / p>
答案 1 :(得分:0)
通常,当您在目录上设置权限时,它们会在大多数情况下通过扩展ACLS级联到文件。我立即看到的问题是你授予了世界访问权限,这是一个坏主意。唯一需要该目录权限的用户(最多700个)将成为您的Web服务器。所以我会尽快恢复安全性。