开发环境- 配置虚拟主机域名/hosts文件 - 学习/实践

1.应用场景 

用于快速搭建本地开发环境并通过虚拟域名访问.

2.学习/操作

1. 文档

phpstudy v8.0创建本地站点域名教程(图文)

Phpstudy v8.0 - 创建本地站点域名_william_n的博客-CSDN博客

nginx虚拟主机配置 - 知乎 -- 需要验证 // 20210530 周日 家里

入门(Getting Started): 安装 Yii(Installing Yii) - Yii 2.0 权威指南 - 文档 - Yii Framework 中文网

2021-11-02 - 断网了,还能ping通 127.0.0.1 吗?_william_n的博客-CSDN博客

环境一

windows10 64位 专业版

php 5.6

环境二

mac 

docker

php 7.x

Note

1. host文件中只能配置ip与域名之间的映射,配置端口并不能生效. 

如果想通过不同端口访问web app 需要手动在url后加上端口号

2. host文件记录并不是向上覆盖, 而是上面覆盖下面, 即只要匹配到就不会再进行匹配 ---- 越在上面, 优先级越高

2. 新建项目[项目作为一个目录, 有入口文件]

如: [使用PHP框架laravel开发]

项目名称: project.test

入口文件: project.test\public\index.php

3. 修改hosts文件

C:\Windows\System32\drivers\etc\hosts 

从最后一行[也可以任意位置],新增如下:   // 一个项目对应域名解析地址,  这里的project.test是浏览器中url中的域名

127.0.0.1 project.test

4. 修改Apache/Nginx的vhost文件, 有时是vhost目录[在该目录下新建文件]

参考原有的默认配置信息/文件,  新建配置信息/文件, 

如下:

同一文件新增模块形式

<VirtualHost blog.test:80>
DocumentRoot "D:\phpstudy\PHPTutorial\WWW\project.test\public"
  <Directory "D:\phpstudy\PHPTutorial\WWW\project.test\public">
    Options -Indexes -FollowSymLinks +ExecCGI
    AllowOverride All
    Order allow,deny
    Allow from all
    Require all granted
  </Directory>
</VirtualHost>

新文件形式 // 这里是phpstudy

4.1 无论是同一文件中还是不同文件中, 新增信息与原有信息, 文件内容只有如下两行不同即可

    DocumentRoot "D:/phpstudy_pro/WWW/project.test/public"
    ServerName project.test

4.2 具体配置信息含义,请另行查询文档

5. 重启web服务器 Apache/Nginx

6. 浏览器中输入输入url,回车即可

project.test

如出现预期效果, 则, 虚拟主机配置成功,若失败, 请重试,并找原因!

具体步骤可参考:

Phpstudy v8.0 - 创建本地站点域名_william_n的博客-CSDN博客

后续补充

...

3.问题/补充

Image

1. 利用虚拟主机的特点, 可以阻止浏览器向指定的站点访问, 发送请求, 从而模拟不能请求/请求异常的情况

步骤:

在Hosts文件中添加规则:

以管理员身份运行【记事本】

打开C:\system32\drivers\etc\hosts

添加规则,127.0.0.1    需要禁止的dao网址

最后保存即可生效

Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,【其实会先找浏览器的缓存DNS,有时候需要清理掉浏览器中缓存DNS】一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。 

补充

环回地址是在同一台计算机内部的程序之间进行网络通信时所使用的默认地址,一般使用一个特殊的 IP 地址 127.0.0.1 作为环回地址,该地址还有一个与之具有相同意义的主机名 localhost,使用这个 IP 地址或主机名,数据包不会流向网络。 // localhost 可以配置,就在hosts文件中

关于浏览器输入域名回车发生的详细过程参考:

浏览器输入URL后发生了什么?你确定都懂了吗_william_n的博客-CSDN博客_浏览器输入url后发生了什么

2. 待解决的问题 ---- 20210528 周五 公司

以 Apache/Nginx/PHP self server 为例, 深入了解

虚拟主机是如何实现的?
隐藏index.php入口脚本是如何做到的?{如,laravel 是如何根据php self server做到隐藏index.php?}

TBD

3. Linux 下使hosts文件立刻生效 -- 20211121 周日 绵阳

4.参考

https://www.xp.cn/wenda/394.html?

Phpstudy v8.0 - 创建本地站点域名_william_n的博客-CSDN博客

入门(Getting Started): 安装 Yii(Installing Yii) - Yii 2.0 权威指南 - 文档 - Yii Framework 中文网

2021-11-02 - 断网了,还能ping通 127.0.0.1 吗?_william_n的博客-CSDN博客

后续补充

...

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值