PHP:如何检查脚本调用者的IP地址

发布于 2024-10-17 15:14:02 字数 181 浏览 1 评论 0原文

我需要在我的 php 脚本顶部添加一个 if 语句,以便检查脚本调用者的 IP:

if (invoker_ip = "123.123.123.123") {
    .. code here ..
}

该脚本只是我服务器上的一个 script.php 文件,

谢谢

I need to add an if statement on top of my php script in order to check the ip of the script invoker:

if (invoker_ip = "123.123.123.123") {
    .. code here ..
}

the script is just a script.php file on my server

thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

£噩梦荏苒 2024-10-24 15:14:02
$ip = '123.123.132.132';

if ($_SERVER['REMOTE_ADDR'] === $ip) {
    // This will only excexuted if the IP matches
    echo 'IP does match :)';
} else {
    echo 'IP does not match!';
}
$ip = '123.123.132.132';

if ($_SERVER['REMOTE_ADDR'] === $ip) {
    // This will only excexuted if the IP matches
    echo 'IP does match :)';
} else {
    echo 'IP does not match!';
}
忆伤 2024-10-24 15:14:02

使用:

$invoker_ip = $_SERVER['REMOTE_ADDR'];

不过,如果用户位于代理后面,则该值将不相关。
真实的IP可能可以在HTTP标头中找到,例如HTTP_CLIENT_IP或HTTP_X_FORWARDED_FOR,但不可信。 (标题很容易修改)

Use :

$invoker_ip = $_SERVER['REMOTE_ADDR'];

Nevertheless this value will not be relevant if user is behind a proxy.
The real ip probably can be found in HTTP header like HTTP_CLIENT_IP or HTTP_X_FORWARDED_FOR but can't be trusted. (header are easy to modify)

流年里的时光 2024-10-24 15:14:02
invoker_ip = $_SERVER['REMOTE_ADDR']
invoker_ip = $_SERVER['REMOTE_ADDR']
緦唸λ蓇 2024-10-24 15:14:02

询问 $_SERVER['REMOTE_ADDR'] 但要小心代理。

Ask $_SERVER['REMOTE_ADDR'] but beware of proxies.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文