【发布时间】:2019-06-24 06:31:31
【问题描述】:
我目前正在开发一个类似论坛的网站,目的是学习开发 Web 应用程序和应用程序安全性。网站的某些部分受凭据保护。
但是有一个 .php 脚本可以返回最新消息。我的 news.php(通过 javascript 和 jquery ajax)向 return_news.php 发出请求,以获取有关最新消息的 json 文件。而此时出现了一个问题。任何人都可以向 return_news.php 发送请求并在他们的网站上显示我的数据。我想做到这一点,以便只有我主机上的文件可以向我的端点发出请求或使数据只能通过我的域https://www.example.com 访问,并拒绝来自其他来源的任何请求。
我做了什么:
我在互联网上做了一些研究。阅读一些关于 CORS 和 .htaccess 文件的文章。但是我的主机在云服务器上,我认为我无法访问它。而且我找不到检查主机当前配置的方法。该问题似乎与 CORS 有关,但我找不到有关如何实现目标的详细说明。
总结:如何配置我的网站以使内容只能通过我的域(例如https://www.example.com)获得,我的 api 响应仅来自我的域的请求,而我的内容不能仅通过获取请求并显示在另一个网站上?
【问题讨论】:
-
查看 PHP
$_SERVER[]superglobal。可能有助于新闻生成 PHP 脚本。 -
@DeDee 它是在互联网上写的,使用 $_SERVER 全局进行的检查可以被欺骗,但我不明白如何。