3

大家好,请帮助无知。我四处寻找解决方案,但它似乎避开了我。

我最近在我的主机上的公共 html 文件夹中设置了一个包含读取所有脚本的 php 文件。db_config 和 db_connect 以及任何更敏感的文件都被隐藏起来,因此无法直接访问。

我需要阻止或至少减慢普通乔能够在他们的浏览器中运行我读取所有脚本的速度,显然随着收集这样一个数据库所花费的时间,它变得有些有价值,并且不愿意让某人免费拥有它太容易了。

移动应用程序需要可以访问 php 才能执行,所以不幸的是必须留在公共目录中(除非你知道吗?)

你能指出我正确的方向吗?

标头重定向似乎是唯一可用的选项。我必须承认这让我对脚本有些困惑。

就像我很喜欢有人给我剧本一样,不自己学习的乐趣在哪里:)

感谢您抽出宝贵时间阅读和回复。

4

2 回答 2

0

我将在这个答案中忽略 CHMOD:

这不是最好的解决方案,但一种易于维护的保护文件的方法是使用 HTACCESS(如果可以的话)阻止对它的公共访问。使用像其他答案之一提到的标志也很好,也是一种合法的方式来做到这一点,但 HTACCESS 甚至会首先禁止脚本运行。

<files myfile.php>
order allow,deny
deny from all
</files>

编辑:刚刚看到您提到了 JSON,所以在这种情况下忽略上述内容(我不熟悉 JSON,但我认为它不会起作用)。

这个解决方案也不是完美的,但它可能会有所帮助: PHP 检查传入请求是否为 JSON 类型

您可以检测传入的请求是否来自 JSON,如果不是则忽略。

于 2013-04-06T20:27:03.973 回答
-2

据我了解,您的应用需要使用它,但网络上的任何人都不需要,对吧?你可以做几件事。

首先,您的应用程序可以使用查询字符串请求页面,&verified=1除非传递了 $_GET 变量,否则脚本将无法工作。像

if(isset($_GET['verified'])){ 
//show code
}
else
{
//not today average joe
}

你也可以把它放在一个秘密目录中,比如“sjdvjhb_kdfjgvkedn”

于 2013-04-06T20:19:44.790 回答