【问题标题】:Safe PHP database config安全的 PHP 数据库配置
【发布时间】:2016-04-09 13:29:41
【问题描述】:

最近我开始学习 PHP。我创建的网站使用单个 PHP 文件(例如 config.php)在其中保存数据库信息、密码等。

例如,我的 config.php 是这样的:

 <?php
        return array(
            "ip"=>"localhost",
            "user"=>"rootusr",
            "password"=>"abc",
        );
    ?>

我正在通过$conn = include("config.php");echo $conn[ip]; 等从其他文件访问此内容。

我的问题是:

这是安全的方法吗?是否有人能够(不包括我)从其他服务器访问这些数据?包括我的 config.php 并自己使用它? 我怎样才能做得更好或更安全?

感谢您的帮助! :)

【问题讨论】:

  • 除非你错误地配置你的服务器以显示 PHP 文件而不是执行它们,否则它是非常安全的;但如果您能确保该文件位于 Web 根目录及其子目录之外,那就更好了

标签: php mysql database config


【解决方案1】:

您可以在 .htaccess 文件上进行设置,以限制从网络访问该文件,如下所示:

<Files "config.php">
Order Allow,Deny
Deny from all
</Files>

这意味着,该文件只能由 PHP(在您的服务器上)/有权访问您服务器的 www 目录的其他人访问,这是一种足够安全的方式来执行您正在尝试执行的操作。

【讨论】:

    【解决方案2】:

    为了更安全,您还可以将 config.php 移到文档根目录或公共 html 之外。例如:

    Project_root
      config.php
      public_html/ <- (document root)
        index.php
    

    【讨论】:

      猜你喜欢
      • 2011-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-20
      • 2020-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多