【问题标题】:Is it secure to use include() to connect to server and database?使用 include() 连接服务器和数据库是否安全?
【发布时间】:2015-05-05 15:26:51
【问题描述】:

使用带有连接参数的 PHP 文件并将该文件包含到页面中是否安全?

示例:

include("connect.php");

connect.php:

$con=mysqli_connect('localhost','root','','database')  
or  
die(mysqli_connect_error($con)."- In line: ".__LINE__);

mysqli_set_charset($con,'utf8');

【问题讨论】:

    标签: php mysql mysqli database-connection php-include


    【解决方案1】:

    是的,因为包含发生在服务器端。您应该查找一些有关服务器端编程和客户端编程的信息!

    此外,MySQL 函数也已正式弃用,应改用 MySQLi 或 PDO!!!

    【讨论】:

    • 嗨!感谢您的回答。现在我正在使用 MySQLi,因为我的虚拟主机需要它
    【解决方案2】:

    是的,这很好,但如果您使用require() 可能会更好,这样如果由于任何原因包括连接信息失败,代码执行就会停止。即使命令没有成功,include() 也会继续执行脚本,这可能会导致错误信息和/或仅在连接成功时才需要的信息被暴露(一般不推荐)。

    为了更加安全,您可以将连接信息文件移出公共 Web 根目录(例如,如果 Web 根目录是 /home/data/files,则将其移动到 /home/data,然后包括 /home/data/connect。 php 或 ../connect.php - 如果您的网络主机允许这样做)。这意味着它不能通过 HTTP 访问。

    【讨论】:

      猜你喜欢
      • 2017-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-02
      • 1970-01-01
      • 2015-03-18
      • 1970-01-01
      相关资源
      最近更新 更多