一个常见问题,从浏览器输入网址到最后返回数据,中间都做了啥,一次给你讲明白!(以请求php文件为例)
- 用户访问域名
- DNS解析(或者解析本地 hosts 文件) -到域名服务商递归查询 IP
- TCP连接-三次握手建立 TCP 连接
- 请求到对应服务器的 IP和端口上
- Nginx 监测到端口的请求
- Nginx 针对url 进行 location 的匹配
- 执行 location 的规则,转发请求到 php
- php-fpm的 master进程检测到Nginx 请求
- Master进程将请求分配一个闲置 worker进程
- Worker 进程执行请求
- Worker 进程将执行结果返回给 Nginx
- Nginx 返回结果给用户
- 用户看到了原始内容,然后浏览器开始渲染 从 html ->css -> js
以上是整个请求的过程,只是简单的描述每个过程,并没有针对每个过程深入的讲解,欢迎大家一起讨论 另外附上一篇知乎讲的比较好的关于该问题的解答https://zhuanlan.zhihu.com/p/3122628182
浙公网安备 33010602011771号