本地虚拟机ip:192.168.3.2 开发环境ip:192.168.107.10
1.域名在虚拟机内部和外部解析到的ip不同?
可能是本地修改或者DNS服务器不同导致
1.访问一个域名,如wuyachao.com,查看C:WindowsSystem32driversetchosts
里面配置,查看域名是否指定到某一个ip上,然后查看DNS服务器。
2.然后查看虚拟机的hosts文件和dns,即cat /etc/hosts
和cat /etc/resolv.conf
,dns里例如:;nameserver 192.168.107.2
,;
可用于注释。
2.发现是dns服务器问题,修改为开发环境的DNS之后,ping请求的域名,显示ip一致,但是访问接口依然显示不同的结果?
- nginx的resolver影响
查看nginx的nginx.conf文件,找到resolver,openresty接口走的本地nginx的resolver指定的dns服务器,不同环境需要修改,但是php不需要,即使注释掉也没有影响,可以忽略这条。
2.php-fpm的缓存影响
通过gethostbyname('wuyachao.com'),就可以返回域名对应的ip地址,因为可能缓存,kill掉php-fpm进程重启,就好。