【发布时间】:2011-06-06 06:07:43
【问题描述】:
我允许人们在我的服务器上使用目录,但我不希望 PHP 文件或其他服务器端脚本编辑任何父目录是否有人知道如何执行此操作以及是否可以使用 chmod 或 .htaccess .
我用谷歌搜索了它,但找不到任何我认为我可能一直在寻找错误的东西。
【问题讨论】:
标签: php linux apache .htaccess chmod
我允许人们在我的服务器上使用目录,但我不希望 PHP 文件或其他服务器端脚本编辑任何父目录是否有人知道如何执行此操作以及是否可以使用 chmod 或 .htaccess .
我用谷歌搜索了它,但找不到任何我认为我可能一直在寻找错误的东西。
【问题讨论】:
标签: php linux apache .htaccess chmod
使用 open_basedir 指令将您的 PHP 脚本限制在它们的主目录和最终的额外目录中。这本身就非常有效。
使用强化的 php,因为这不需要任何成本,而且可以提供帮助。
使用 suPHP 让 PHP 脚本以文件所有者的身份执行(每个网站一个用户)并避免使用具有不良权限的文件,例如 777... suPHP 还可以让您在每个目录中拥有一个 php.ini,这样一个人的愚蠢要求不会毁掉一切。
Mod_security 是一大优势,但需要很好地使用和配置。
【讨论】:
只是不允许使用其凭据运行 PHP 脚本的用户更改父目录。使用与 PHP 用户不同的用户对父目录 drwxr-xr-x 进行 chmod。然后在子文件夹中授予必要的权限。
【讨论】:
您的意思是,您不希望他们能够更改您的 PHP 文件?
或者您不希望 PHP 程序能够更改此目录中的文件?
如果是第一个,请将文件的所有权设置为与使用chown 登录的客人不同的所有者和组。然后在要保护的文件夹中执行chmod go-rwx *php。这将使与您和其他任何人不在同一组中的用户无法读取、执行或写入这些文件。
如果是第二种情况,请将文件的所有权更改为您的网络服务器运行帐户以外的其他帐户(尝试<?php passthru('whoami');?>)。然后执行与上面相同的 chmod 命令。
【讨论】: