【发布时间】:2020-02-21 18:47:46
【问题描述】:
我正在尝试尽可能安全地设置我的 PHP SQL 脚本。我在这里浏览了各种帖子,尤其是this post。
这里建议将 PHP 脚本的配置文件放在 web 可访问空间之外。
问题:如何访问脚本中的文件夹,这超出了 web 可访问的文件夹结构。在此我的意思是在调用脚本的 domain-webspace-directory 之外?
我的 PHP 脚本通过以下方式导入配置:
require_once __DIR__ . $_SERVER['DOCUMENT_ROOT']."/apis/CONFIG/abc-app/file_CONFIG.php";
脚本通过app-abc通过子域调用
https://api.mysubdomain.ru/abc-app/get_all_SQL_data.php
关于webserver文件夹结构,上面的文件位于这里:
/www/htdocs/webhosteraccountid/apis/apis/abc-app/get_all_SQL_data.php
而当我通过 FTP 在最高可访问级别访问我的网站空间时,我在
//apis/apis/abc-app/get_all_SQL_data.php
所以 /api/ 是一级文件夹。
我的子域指的是文件夹
/www/htdocs/webhosteraccountid/apis/apis/
现在回到我的脚本。当我使用
$_SERVER['DOCUMENT_ROOT']
我明白了
/www/htdocs/webhosteraccountid/apis/apis/
所以我的脚本总是失败,因为我从来没有进入比子域访问的文件夹级别更高的文件夹级别。相应地,我从来没有得到真正的服务器根目录,只有子域的根目录。
因此,我的配置所在的文件夹似乎位于 DOCUMENT_ROOT 之外。但是如何定义这样一个文件的路径呢?这可能吗?但如果不是,那么将文件放入不可 Web 访问的文件夹中意味着什么?
感谢您的提示。
【问题讨论】: