Php 如何获取对我的API的请求的来源?
我正在写一个API。我只需要特定的URL地址来访问此API。如何找到尝试使用API的URL地址Php 如何获取对我的API的请求的来源?,php,authentication,api-design,Php,Authentication,Api Design,我正在写一个API。我只需要特定的URL地址来访问此API。如何找到尝试使用API的URL地址 我想知道尝试使用类似yada的方法访问API服务器地址的URL地址。PHP中有一个名为$\u server的数组,它提供了有关请求的各种有用信息,包括所有HTTP头、请求类型、IP地址、浏览器用户代理等。详细信息,请查看。例如,要访问访问API的IP地址,请使用$\u SERVER['REMOTE\u ADDR']注意:您需要的是IP地址,而不是URL地址。无论哪种方式,您都有一个答案来解释该做什么。
我想知道尝试使用类似yada的方法访问API服务器地址的URL地址。PHP中有一个名为
$\u server
的数组,它提供了有关请求的各种有用信息,包括所有HTTP头、请求类型、IP地址、浏览器用户代理等。详细信息,请查看。例如,要访问访问API的IP地址,请使用$\u SERVER['REMOTE\u ADDR']
注意:您需要的是IP地址,而不是URL地址。无论哪种方式,您都有一个答案来解释该做什么。如果您有一个API需要限制对它的访问,那么您需要设置一个身份验证机制,比如OAuth或JWT。不要试图在安全问题上走捷径。请在此处添加有意义的代码和问题描述。发布一个能证明你的问题的帖子会帮助你得到更好的答案。谢谢@我该怎么做。你在共享链接吗?谢谢:))例如,你可以使用像这样的库来提供更多信息。您使用了哪个变量?你得到了什么样的结果?即使我想,我也无法读懂你的心思(或屏幕)。Api地址:Api.example.com/test.php客户端:blabla.com我正在尝试查找使用Api的url地址。示例:blabla.com。我为英语使用不好而道歉。我在学新英语,他已经知道了。你试过检查我给你的答案吗?您可以通过检查$\u SERVER['REMOTE\u ADDR']
@Andy来获取IP,我知道,但是如果请求中不包含主机:
头,他将一无所获。远程地址将始终被填充。但实际上还有一个更大的问题。当使用$\u服务器['REMOTE\u HOST']
时,任何人都可以向HOST:allowed one.com
发出请求,并将被允许使用API。这几乎等同于没有安全性,任何人只要知道至少一个允许的域,就可以绕过它。REMOTE\u HOST
如果您的httpd.conf
中没有hostnameLookup,它也将不起作用。它还使用REMOTE_ADDR,只进行反向DNS查找,这样您就不会得到额外的信息。