nginx局域网
㈠ nginx里面如何判断一个请求是来自局域网还是外网
只需要判断访问的来源IP即可
如果IP是内网IP,则请求为内网,否则为外网
nginx中获取IP可以使用变量$remote_addr
㈡ 我在局域网pc配置nginx服务器,局域网别的pc可以访问,但是手机用wifi无法打开我nginx web站点,为啥呢
根据你的描述判断最有可能的原因是:
路由器设置里启用了无线的AP隔离,该功能内使得连接无线容的设备只能通过路由器连接Internet而不能互相访问(局域网),关闭AP隔离功能试试
注意:只要是开启了无线AP隔离功能有线网络局域网是无法被无线网络访问,且无线网中各个设备之间也不能互相访问
㈢ 宝塔面板如何在nginx下使局域网支持ssl
数网站的都是以HTTP开头,HTTP协议我们比较熟悉,信息通过明文传输,与服务器间传输数据更快速准确,但是HTTP明显是不安全的。
当我们在使用邮件或者是在线支付时,都是使用HTTPS。HTTPS传输数据需要使用证书并对进行传输的信息进行了加密处理,相对HTTP更安全。
一、生成根证书
生成根证书应该有许多种:
1、如果操作系统是server,可以搭建CA服务器
参考文章:《搭建CA服务器》
我搭建了,但因为刚开始的时候思路没有整理清晰,乱试一气,没有试成功。但现在想起来,应该也可以的
用makecert.exe
这是微软为WIN7或以前的操作系统准备的证书生成工具,挺好用的。现在WIN10和win2016 server之后用的是一个叫:New-SelfSignedCertificate 的工具,在power shell里面运行的命令。
itisscg.exe
这是一个用.NET开发的证书生成工具,图形界面。这个工具小巧玲珑,只有200多K,需要.NET4.6的支持
客户端导入根证书
将根证书文件拷贝到客户端机器,在“本机”的“受信任的根证书颁发机构” 里导入即可。
完成以上3个步骤,已经大功告成。但是,开发阶段,一个网站往往需要多张证书:
网站多张证书
依我看,开发过程中,一个网站往往有两张以上的证书。为什么这么说呢?我们开发的时候,访问本机的网站,一般都用localhost,而别人访问我们,肯定要用IP。虽然证书里的subject alternative name 支持多个域名和IP,但如果是localhost与IP混在一起的话,谷歌浏览器支持,IE又不干了,它会警告说这张证书是颁布给别的网站的。所以localhost要与IP分开成两张证书。
㈣ NGINX的IP_HASH局域网不同客户机访问NGINX,老被分配到同一服务器的,不会均衡的,是哪里有问题有什么办法
这是正常的。IP_hash主要作用就是让同一个IP连接到后台固定的一台机器。回除非,这台机器停止响应,答或者挂掉,或者被Nginx踢除。
这有助于Session保持。
如果你想轮询的话,就不要加Session。这样客户端访问看看。就会变化。