我必须在哪里移动文件才能使其无法通过我的网络服务器访问?

我必须在哪里移动文件才能使其无法通过我的网络服务器访问?

我有一个连接 php 文件,上面有我的数据库密码。它位于我网站上的 PayPal 商店的包含目录中。试图找出可以将该文件夹和文件移动到哪里以便没有人可以看到它?

<?php
include('var/includes/connection.php');

或者

 include('../../../includes/connection.php');

我的文件位于 /var/www/html/foo/foo/includes/connection.php

答案1

您调用的 root 是您的 http 服务器提供的文件的根目录,通常用作标准/var/www,但这可以根据您的配置进行更改。

是向您的服务器发出的请求可访问的第一个目录,因此您有:http://www.yoursite.com它将被引用/var/www

如果您将文件移动到不在该路径内的目录中,则将无法访问,但这并不意味着您必须递归 /var 路径,您也可以将文件放入其中,/home/myusername/connection.php就像示例一样。

使用正常配置的网络服务器,远程攻击者不可能获取存储在该文件中的变量,因为 php 文件已被处理,但是假设由于配置错误的 http 服务器配置,php 不会被执行,它将作为纯文本显示您的数据。

因此,为什么建议将文件移到可浏览的文件夹范围之外,并通过从 php 包含它来访问它,例如

<?php
include('/home/user/myconfig/connection.php');

我会选择一个更有组织的位置。

相关内容