一、本地主机通过域名访问自己写的网页
1、开启phpstudy
2、找到phpstudy目录下的www文件夹,创建less01文件夹、index.html、web.php文件,进行配置,如下图:
3、重启一下phpstudy,然后访问网页
4、上面只能通过文件目录访问,下面需要做到能用域名访问,配置域名,用虚拟主机,在下面文件位置填写
复制粘贴一个sever进行更改就可,如图:
5、把DNS解析在本地
位置:C:\Windows\System32\drivers\etc
6、重启Nginx服务器,通过域名访问网页
7、这里有几个问题
1、解析域名有哪些命令
windows和Linux可以直接ping
Linux和windows都可以使用nslookup
Linux可以用dig
2、解析域名全流程用什么命令?
dig +trace
3、总结解析域名全流程:
1、查看本地缓存,命令:ipconfig /displaydns
2、如果没有查到A记录,查host文件
3、如果host也没找到,会找到网关路由器,内置13台根域服务器,根域服务器会发送查询路径,可以根据查询路径去查询,例:www.baidu.com,根域服务器会告诉你去找.com顶级域的dns服务器去解析,然后.com的服务器又把baidu.com的dns地址告诉你,最终找到baidu.com的dns,并且查询到对应服务器的IP,然后返回给你的路由器,最后再返回给你(迭代查询)
4、nginx支持php的流程:网站请求过来以后,来到php-fpm,“php-fpm”是fastcgi的管理工具,fastcgi是个协议,可以把网站的请求转换成符合这个协议的文本然后发送给php-fpm,然后再发送到后端的php
下面是vs code远程连接虚拟机Ubuntu系统的文件,方便理解nginx支持php的流程
5、问题:“9000”端口为啥就是9000呢?为啥不是8999或9001呢?
回答:由于是php-fpm发送的数据,所以在php支持的时候,需要去连接php-fpm,而在www.conf里面是9000端口,所以在nginx.conf文件中也是9000,如下图:
6、总结整个流程:前端发给nginx,nginx经过fastcgi整理好发送给php-fpm,最终发送给php,所以nginx里是9000,fpm里也要是9000
8、从本地物理机外访问Ubuntu虚拟机的网页:
1、在Ubuntu虚拟机html目录下修改”nginx.conf“文件,复制一个新的server,粘贴在下面,然后修改
2、将127.0.0.1与虚拟机域名对应,在/etc/hosts下修改,命令:vim /etc/hosts
3、在本地物理机上寻找路径C:\Windows\System32\drivers\etc,更改hosts,域名和虚拟机IP对应
4、在虚拟机html目录下创建”ouya“文件,在文件下创建demo.html和web.php,填写html文件和php文件
5、访问网页
成功用域名www.ouya.com访问到了demo.html网页!