Nginx教程

[nginx]借助nginx实现自动获取本机IP

本文主要是介绍[nginx]借助nginx实现自动获取本机IP,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

前言

在用脚本自动化部署应用时,有的应用需要指定本机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}"
这篇关于[nginx]借助nginx实现自动获取本机IP的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!