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

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

<a href='mailto:'>微wx笑</a>的头像微wx笑2019-11-18 10:45:33网络工具人已围观关键字:

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

通过两行 Nginx 配置开放一个API,用于返回客户端的 IP 地址。z5C编程技术_踩坑日志_进阶指南 - 无知人生


这是我使用Nginx设置“显示我的公共IP地址”而没有任何后端的方法(没有PHP,没有Nginx-Lua,...)。z5C编程技术_踩坑日志_进阶指南 - 无知人生

以下代码块可以解决问题:z5C编程技术_踩坑日志_进阶指南 - 无知人生

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

响应只是客户端的公网IP地址:z5C编程技术_踩坑日志_进阶指南 - 无知人生

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

你可以访问“https://www.ivu4e.com/ip”试试z5C编程技术_踩坑日志_进阶指南 - 无知人生


z5C编程技术_踩坑日志_进阶指南 - 无知人生

default_type text/plain 指令除了阻止Web浏览器尝试将响应下载为文件外,没有其他实用程序。z5C编程技术_踩坑日志_进阶指南 - 无知人生

即,Web浏览器可以直接显示IP地址。z5C编程技术_踩坑日志_进阶指南 - 无知人生

对于与端点交互的程序,它没有特殊用途。z5C编程技术_踩坑日志_进阶指南 - 无知人生


z5C编程技术_踩坑日志_进阶指南 - 无知人生

彩蛋:JSON响应z5C编程技术_踩坑日志_进阶指南 - 无知人生

想要JSON格式的响应应吗?当然,这是完全可行的:z5C编程技术_踩坑日志_进阶指南 - 无知人生

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

现在,响应是一个漂亮的JSON文档:z5C编程技术_踩坑日志_进阶指南 - 无知人生

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

你可以访问“https://www.ivu4e.com/json_ip”试试z5C编程技术_踩坑日志_进阶指南 - 无知人生

我希望Nginx的小技巧可以为您节省一些维护时间。z5C编程技术_踩坑日志_进阶指南 - 无知人生


z5C编程技术_踩坑日志_进阶指南 - 无知人生

英文原文:z5C编程技术_踩坑日志_进阶指南 - 无知人生

Public IP Address API with two lines of Nginx configz5C编程技术_踩坑日志_进阶指南 - 无知人生

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

很赞哦! () 有话说 ()

相关文章