拒绝外部访问php文件


Deny external access to php files

我的平台使用AJAX与内部结构(API和其他)进行通信。所有AJAX请求都被发送到一个名为globalAPI.php (POST方法)的文件,在那里他与其他php文件通信(这是为了隐藏内部结构)。

假设用户发现了它的工作原理,并从他的服务器开始发出请求。我们可以得出结论,它甚至可以在不登录我的平台的情况下生成结果。

那么如何保护这个文件不被外部访问呢?

我相信我可以使用Allow from 127.0.0.1.htaccess文件,但是如果用户将他的ip更改为127.0.0.1,他将有权访问该文件吗?

有其他方法来保护这个文件吗?

如果你想限制它们的访问,你应该在你所有的API调用中实现一个身份验证系统。

基本上,你不能阻止用户从Devtools打开Network选项卡并观察客户端向服务器API发出的请求:高级用户可以看到每个请求发送的参数,并使用相同或不同的参数重新发送请求。

如果这个文件可以通过AJAX访问,那么无论如何客户机都可以访问它:您必须做的是确保用户不能访问AJAX调用允许的更多内容。要做到这一点,保护你的API,例如,为每个调用请求一个用户令牌:服务器将知道哪个用户访问API,你可以从这一点处理授权。