我正在尝试尽可能安全地设置我的PHP SQL脚本。我在这里浏览了各种帖子,尤其是this post。
这里建议将PHP脚本的配置文件放在可访问网络的空间之外。
问题:如何访问脚本中的文件夹,这超出了webaccessible文件夹结构。我的意思是在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
关于网络服务器的文件夹结构,以上文件位于此处:
/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之外。但是,如何定义此类文件的路径?这可能吗?但是,如果没有,那么将文件放入不可访问的文件夹又意味着什么呢?
感谢提示。
感谢您的评论。他们成功了。我保留上面示例的解决方案是:
include '../../DB_CONFIG/abc-app_CONFIG.php';