Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是“需要一次”吗/文件/config.php";在现代标准中隐藏我的配置文件最安全的方法(2013)?_Php_Mysql_Security - Fatal编程技术网

是“需要一次”吗/文件/config.php";在现代标准中隐藏我的配置文件最安全的方法(2013)?

是“需要一次”吗/文件/config.php";在现代标准中隐藏我的配置文件最安全的方法(2013)?,php,mysql,security,Php,Mysql,Security,有很多信息在那里,我正试图将所有这些因素纳入php中的一个单页web应用程序中。不要试图进入争论,只是在现代网站上寻找一个标准,或者如果意见不同,只是这和其他选择带来的一些风险 我还有一个connect.php文件中的数据库连接,在域根目录中,我也在考虑向后移动一个级别 <?php require_once "../../folder/config.php"; session_start(); ob_start(); $access = 'my_value'; // ... if($co

有很多信息在那里,我正试图将所有这些因素纳入php中的一个单页web应用程序中。不要试图进入争论,只是在现代网站上寻找一个标准,或者如果意见不同,只是这和其他选择带来的一些风险

我还有一个connect.php文件中的数据库连接,在域根目录中,我也在考虑向后移动一个级别

<?php require_once "../../folder/config.php";
session_start();
ob_start();
$access = 'my_value'; 
// ...
if($connectDatabase == TRUE) {
  $action=TRUE;
  include('connect.php');
}

它应该是安全的,但我建议不要在你的网站上建立索引。这将不允许人们进入该目录查看php文件,如果他们试图进入connect.php,他们将看不到任何内容


将配置文件移到公用文件夹之外,使其无法通过URL访问。或者,使用.htaccess文件保护包含的文件夹

deny from all


拒绝命令
全盘否定

只要所有的
*.php
文件都是通过php解释器提供的,那么它们的内容[在
]之间]就和应用程序一样安全。旧式的命名方式包括
dbinfo.inc
,这导致了一些问题,因为如果您知道扩展名,
*.inc
文件只是作为文本使用。对于目录列表中的逻辑分组,我更喜欢inc.dbinfo.php、class.mysql\u db.php、view.news.php等,但只要它们以
.php
结尾,它们都是自己的


一旦有人能够执行代码注入,或将原始文件放在服务器上或从服务器上检索原始文件,则无论数据库信息存储在web根目录上多少级别。

定义“隐藏”。如果他们可以访问服务器上的原始PHP文件,我认为您比他们更关心的是如何查找数据库连接信息…;-)我不同意禁用索引。理由:如果你不想允许访问某些文件,首先不要把它们放在你的Web服务器上。我确实有这样的想法,但是如果你关心SEO,什么能解决这个冲突呢?我不是说搜索引擎的索引或爬网。我说的是,如果没有index.php或index.html文件页面,则可以查看目录中文件的“列表”。因此,如果你说,/images/通常包含图像,你会看到一个完整的列表。如果索引是allowI的话,php文件也是如此。我确实查看了.inc,这让我了解了我的代码到底有多安全。很高兴知道解决方案已经过时。我将更深入地研究php/mysql的安全性,但我相信,就我所知,我们是针对sql注入编写代码的,不确定是否存在所有其他潜在风险。我一直认为,如果这些文件位于域根目录或Web服务器中,则风险更高。潜在风险更高。脚本可能会输出一些通常由某些输出缓冲语句捕获的内容,或者生成比通常包含它的脚本可能避免或捕获的错误消息更具描述性的内容。同样,可以通过将includes目录移到web根目录之外来缓解这些问题,但这实际上可以归结为代码的安全性有多高;如果有,有什么特点?
<Files config.php>
    Order Deny
    Deny From All
</Files>