网络工具您现在的位置是:首页 > 工具箱 > 网络工具

两行 Nginx 配置返回客户端的 IP 地址

<a href='mailto:'>微wx笑</a>的头像微wx笑 2019-11-18网络工具 10 0关键字:   

通过两行 Nginx 配置开放一个API,用于返回客户端的 IP 地址。这是我使用Nginx设置“显示我的公共IP地址”而没有任何后端的方法(没有PHP,没有Nginx-Lua,...)。以下代码块可以解决

通过两行 Nginx 配置开放一个API,用于返回客户端的 IP 地址。uz0无知


这是我使用Nginx设置“显示我的公共IP地址”而没有任何后端的方法(没有PHP,没有Nginx-Lua,...)。uz0无知

以下代码块可以解决问题:uz0无知

location /ip {
    default_type text/plain;
    return 200 $remote_addr;
}

响应只是客户端的公网IP地址:uz0无知

$ curl https://example.com/ip
2001:1b48:103::189

你可以访问“https://www.ivu4e.com/ip”试试uz0无知


uz0无知

default_type text/plain 指令除了阻止Web浏览器尝试将响应下载为文件外,没有其他实用程序。uz0无知

即,Web浏览器可以直接显示IP地址。uz0无知

对于与端点交互的程序,它没有特殊用途。uz0无知


uz0无知

彩蛋:JSON响应uz0无知

想要JSON格式的响应应吗?当然,这是完全可行的:uz0无知

location /json_ip {
    default_type application/json;
    return 200 "{\"ip\":\"$remote_addr\"}";
}

现在,响应是一个漂亮的JSON文档:uz0无知

$ curl -s https://example.com/json_ip | jq
{
    "ip": "2001:1b48:103::189"
}

你可以访问“https://www.ivu4e.com/json_ip”试试uz0无知

我希望Nginx的小技巧可以为您节省一些维护时间。uz0无知


uz0无知

英文原文:uz0无知

Public IP Address API with two lines of Nginx configuz0无知

本文为转载文章,版权归原作者所有,不代表本站立场和观点。

很赞哦! () 有话说 ()

相关文章