前言
在用脚本自动化部署应用时,有的应用需要指定本机IP,网上找到的方案大多是过滤ifconfig
或者ip
命令的结果,这里提供一种通过Nginx获取本机IP的方法。大致思路为客户端向Nginx发起请求,Nginx返回客户端的ip。
Nginx配置
Nginx安装在内网,返回IP的配置如下:
server {
...
location /ip {
add_header Content-Type 'text/html; charset=utf-8';
return 200 "$remote_addr";
}
}
配置生效:
# 这里使用热加载,也可以直接重启
Nginx -s reload
测试
假设Nginx的ip和端口为 http://192.168.0.20:1234
,客户端使用curl发起请求:
curl http://192.168.0.20:1234/ip
脚本示例
#!/bin/bash
local_ip=$(curl -s http://192.168.0.20:1234/ip)
echo "本机IP为: ${local_ip}"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。