当前位置:首页 > 教程 > 正文内容

nginx局域网访问(nginx 访问)

2023-03-23 01:50:03教程1

nginx 访问

本机系统防火墙限制其他机器的访问

网络中的防火墙设备阻断外界访问

nginx只监听了本地的IP端口,如127.0.0.1:80这样其他机器访问不了,listen指令只写端口号即可绑定当前机器的所有IP

nginx 局域网访问

nginx从1.9.0开始,新增加了一个stream模块,用来实现四层协议的转发、代理或者负载均衡等。比如在内网有一个mysql服务,想暴露到公网上去使用,就可以通过nginx代理的方式通过nginx来进行内网mysql的访问。

实验环境

nginx1.12.1 : 192.168.1.19

mysql : 192.168.1.20:3306

1:编译或者升级nginx至版本1.9.0以上,编译过程中需带上--with-stream。

# ./configure --prefix=/opt/apps/nginx --with-stream

# make && make install

2:配置stream,定义代理192.168.1.20的3306端口映射为端口2333。

# vi /opt/apps/nginx/conf/nginx.conf

……

……

events {

use epoll;

worker_connections 65535;

}

#stream配置

stream {

server {

listen 2333;

proxy_connect_timeout 1s;

proxy_timeout 3s;

proxy_pass 192.168.1.20:3306;

}

}

http {

……

……

}

3:开启nginx,验证代理是否生效。

image.png

可以看到我们现在可以通过nginx代理的端口访问到内网的mysql服务了。这也直接避免了mysql直接暴露到公网,增加些许的安全。当然,利用stream也可以实现后端服务的负载均衡。

nginx 局域网 域名

nginx可以转发内网 url东西。有两种方法:

1、去掉匹配路径转发

匹配规则通常为二级路径,转发的时候过滤掉。

# 转发示例: # 请求:http://somedomain.com/system/path/request # 转发:http://otherdomain.com/path/request # location ^~ /system/ { proxy_pass http://otherdomain.com; }

2、完整路径转发

匹配规则二级路径转发的时候也带上。

# 转发示例 # 请求:http://somedomain.com/system/path/request # 转发:http://otherdomain.com/system/path/request # location ^~ /system { proxy_pass http://otherdomain.com; }

nginx配置内网访问外网

同一个域名可以使用不同的二级域名来实现内网服务

比如有一个域名是abc.com

a.abc.com给服务一用

b.abc.com给服务二使用

也可以用同一个二级域名通过不同的uri来实现不同服务

abc.com/a 指向服务一

abc.com/b 指向服务二

使用nginx 也可以使用反向代理 代理内网的不同服务

nginx配置局域网访问

可以使用nginx部署在80端口,IIS和apache随便什么机器和端口都可以。

配置一下nginx,做反向代理就可以了。很好玩的

本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.

本文链接:https://www.xibujisuan.cn/98754736.html