步骤:
用户输入网址:用户输入网址,包含协议和域名
浏览器获得IP地址:浏览器先找自身缓存看是否有记录,没有的话再找操作系统缓存,再没有就请求本地DNS服务器帮忙,本地DNS再找不到再一层层往上;最后获得对应的IP地址。
浏览器发送请求:浏览器根据HTTP协议,给对应IP地址的主机发送请求报文,默认端口为80,报文含请求内容、浏览器信息、本地缓存、cookie等等信息。
web服务器接收请求、寻找文件:nginx服务器接收到请求,在自己目录下开始寻找对应php文件
PHP应用服务器翻译php文件:找到后将文件发给PHP服务器,PHP服务器打开php文件进行翻译,如果碰到需要数据库对应数据的部分,PHP服务器就用标准的SQL查询语句来获取数据库中的数据。
MySQL数据库提供数据:接收PHP服务器指令,会反馈对应数据给PHP应用服务器。
PHP应用服务器完成翻译发给web服务器:PHP服务器将php文件翻译转换为HTML代码,并返回给web服务器。
web服务器接收并通知浏览器:web服务器接收PHP服务器返回的HTML代码,并反馈给浏览器让浏览器开始下载。
浏览器下载:浏览器收到web服务器通知,开始下载请求的所有资源。
浏览器解析渲染:浏览器边下载边解析,并开始生成HTML树和CSS树,组合二者并开始渲染页面。
浏览器呈现页面:页面渲染完成