如何将数据库应用于驻留在非公共文件夹中的database.php?

时间:2017-04-01 00:24:48

标签: php .htaccess security config

现在我的应用程序已构建,我正在研究如何保护它。如果我将database.php文件放在公用文件夹之外的文件夹中,我该如何从应用程序内部指向它?仅仅使用include结构是不够的,因为它只会到达公共文件夹的顶部。

include '../database.php'; 

3 个答案:

答案 0 :(得分:1)

您可以使用dirname()。让我们说你的文件夹结构是:

public_html/
  index.php
  contact.php
  whatever.php
private/
  database.php

public_html文件中,您可以致电:

$db_file = dirname( $_SERVER[ 'DOCUMENT_ROOT' ] ) . '/private/database.php';
include_once( $db );

如果public_html$_SERVER[ 'DOCUMENT_ROOT' ]dirname会为您提供包含public_htmlprivate的文件夹。然后你只需要将路径传递给database.php

如果它升级到另一个级别(或更高级别),您可以多次使用dirname

$db_file = dirname( dirname( $_SERVER[ 'DOCUMENT_ROOT' ] ) ) . '/private/database.php';

这会让你获得另一个文件夹。

答案 1 :(得分:1)

您可以多次使用include '../../../../database.php';每个..代表一个父文件夹 您也可以定义完整路径而不是相对路径 比如include '/home/secret_folder/place_of_database/database.php';

答案 2 :(得分:1)

您可以使用'./'指定您所在文件的当前路径 然后使用它的许多'../'在文件夹之间移动并获取你想要包含的文件