【php】外部主机访问虚拟机IP,自动跳转IIS7
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【php】外部主机访问虚拟机IP,自动跳转IIS7相关的知识,希望对你有一定的参考价值。
我是在虚拟机里面用phpstudy搭建了一个PHP环境,想在外部主机通过访问虚拟机IP的方式来访问内部的网站.
现在是我通过nat方式让,主机能ping通虚拟机,虚拟机不能ping通主机(我主机防火墙没关,我只想主机访问虚拟机)
虚拟机设置了静态ip 192.168.25.111和子网掩码 网关和dns均未设置
vmnet8 ip设置为了192.168.25.222和子网掩码 网关和dns均未设置
下面是外部主机ping虚拟机
在内部虚拟主机中访问localhost或者127.0.0.1
内部也能访问phpinfo页面
当我在外部主机中输入虚拟机的ip地址时,自动跳转到iis7的界面,输入localhost和127.0.0.1也一样跳转到iis7
但外部主机却能访问phpinfo页面
我怀疑是iis的问题,然后就根据这篇文章
http://www.cnblogs.com/yplong/p/4263469.html
将iis重置了(根据里面提示也将host也修改了)
但还是一样会跳转iis
所以特地来求救,谢谢了
建议要么配置IIS,要么卸载IIS组件,单纯使用apache即可!
另外虚拟机下最好设置网关192.168.25.1。 参考技术A 域名和IP绑定一下就可以了 参考技术B 私聊帮你看下吧
外部网络通过端口映射访问部署在虚拟机里的docker中的web应用
前文说明:
Windows主机 IP:10.100.70.135
Linux 虚拟机 IP:192.168.233.129
Docker容器 IP:172.17.0.11
为方便测试使用,通常我们选择在windows主机中安装虚拟机这(这里选的是VMware workstation),在虚拟机中部署docker容器。而我们部署在docker中的容器外部网络(和windows同一层的网络)是无法访问的。
为了解决这个问题,可以采用一下这种方案。
一、创建容器时可以选择docker自带的端口映射功能能够跨网络实现172.17.0.11与192.168.233.129的通信。参考命令如下,docker的其他使用方法这里不再赘述
docker run -it -p 8003:80 --name nginx1 cariden/centos6.7 /bin/bash
这里我们可以通过访问192.168.233.129的8003端口映射到172.17.0.11的80端口,也就是可以直接访问nginx服务
在docker中部署一个外部服务以供访问,并创建一个简单索引页
二、采用vmware自带的虚拟网络编辑器实现外部网络访问虚拟机内的服务
1.点击”编辑“->”虚拟网络编辑器“,如图
2.选择”NAT“,然后点击”NAT设置“,如图。
3.接下来点击”添加“,让访问主机的8004端口映射到虚拟机里8003端口。
4.在弹出来的界面中分别填入主机端口,虚拟机IP,虚拟机端口,如图
5.确定后,我们就将虚拟机中的80号端口映射到宿主机的8086号端口了。可以外部网络测试了,选择和主机同一层的其他机器做测试就可以了。
6.测试通过!
注:如果以上步骤操作还是不能访问,考虑一下防火墙的问题,可以在防火墙入口规则里开放8004端口,这里为了便于测试我把防火墙关掉了。
本文出自 “7286083” 博客,请务必保留此出处http://7296083.blog.51cto.com/7286083/1876077
以上是关于【php】外部主机访问虚拟机IP,自动跳转IIS7的主要内容,如果未能解决你的问题,请参考以下文章
VirtualBox 设置静态ip,实现虚拟机和宿主机互相访问,并能访问网络