http://lvh.me:3000/ 原理是什么?

阅读 12.2k
4 个回答

泛域名解析
BIND配置文件

*.lvh.me IN A 127.0.0.1

P.S. 楼主也可以试试127.0.0.1.xip.io

先了解下你说的访问本地开发环境是怎么样的

在本地开发,搭建web环境完成之后,一般我们可以用http://127.0.0.1 或者http://localhost 来访问本地网站。

这里拿apache做例子,apache搭建好后会开始监听80端口

127.0.0.1是个特殊的ip,代指本地ip。访问http://127.0.0.1,其实是访问了本机80端口,和http://127.0.0.1:80是一样的

然后呢,在本机的host表里,默认有这么一行: 127.0.0.1 localhost
也就是说访问http://localhost就会被指向到127.0.0.1

这里看一下windows环境下apache的虚拟机配置文件(默认还有些日志文件配置等信息,我删除掉了):

<VirtualHost *:80>
    DocumentRoot "D:/web/"
    ServerAlias localhost
</VirtualHost>

大意:访问http://localhost:80对应web文件目录是D:/web/

然后说下怎么实现你所说的情况

本机测试wordpress,你要二级域名对吧,那我们用http://wordpress.localhost

  1. 在host里添加127.0.0.1 wordpress.localhost
  2. 假设wordpress目录是D:/web/wordpress,在apache的虚拟机配置文件中添加如下
<VirtualHost *:80>
    DocumentRoot "D:/web/wordpress"
    ServerAlias wordpress.localhost
</VirtualHost>

现在就可以通过http://wordpress.localhost访问你的网站了,至于3000,请自行搜索修改apache的默认端口为3000,然后你就可以通过http://wordpress.localhost:3000访问了

PS.我自己一般习惯用缩写,设置127.0.0.1 wp.lh,反正你本机的host想怎么改就怎改

host表随便加上自己想要的域名

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏