我是否应该将安装和配置文件的权限设置为 777?

我是否应该将安装和配置文件的权限设置为 777?

我第一次编写大型 PHP 应用程序(带设置),并且想知道应该采取哪些权限安全预防措施。

setup.php 使用 fopen/fwrite 根据来自 setup.php 的 POST 数据生成 config.php。这可行,但似乎我无法写入 config.php,除非我将其权限设置为777

Config.php 基本上将包含 PHP 变量中的数据库凭据(将被 include()),这样保留好吗777

我想知道这是否可以或者我应该指示用户将权限改回 655 之类的值(我不确定)。

答案1

您应该将文件权限设置为完成手头工作所需的权限。对于安装,权限可能是 777;对于运行应用程序,权限可能是 644。

每次应用程序运行时,您都应该检查权限(关键文件和路径)是否符合您的要求,如果不是,则发出错误消息并停止应用程序运行。

答案2

许多 PHP 应用程序要求您在安装产品时将 config.php 设置为 777。我认为这完全可以接受,但应警告用户,安装完成后应将文件设置回 644。

另一个解决方案是让用户使用数据库设置对 config.php 进行硬编码。但这确实会使一些新用户的操作变得复杂。

相关内容