熟悉后端语言——PHP、http请求

操作题

安装web服务器集成工具(以wamp2.5为例)

  • 下载安装好软件
wamp

wamp
  • 访问localhost:


    localhost
  • 更改软件语言:
    右下角图标,右键,language选项中,找到chinese即可。
  • 增加“your project”选项:
    新版本wamp3.0.6中,将此项隐藏了,打开方式是:
  • 右键左下角图标,找到Wamp-settings;
  • 找到project sub-menu,勾选即可。
  • 访问本地服务器的文件:


    testphp
  • 配置代码目录
    打开阿帕奇配置目录,D:/wamp/bin/apache/apache2.4.9/conf,找到httpd.confctrl+F搜索Documentroot,将默认的www文件目录,改为自己的代码目录,我的设置为E:/Demo,如果想要右下角菜单的选项也变为Demo,可以更改配置,具体不介绍:
    配置自定义的目录
  • 更改右下角目录名字
    打开安装目录d:/wamp64,找到如下两个文件:

    打开wampmanager.inictrl+F搜索menu.left,找到如下位置:

    再打开wampmanager.tpl文件,同样搜索menu.left,更改:

    我的修改是“Demo 目录”,“目录”二字会乱码,用notepad++打开,在格式菜单里,找到ANSI编码格式,保存即可,记事本另存为也可以选择编码格式,设置好之后效果如下:

    点击Demo 目录会显示站点文件:
  • 多站点配置:
    上面说到了建立新的文件夹,并且给其directory权限,会出现问题,就是当建立本地多站点的时候,配置权限会出现不一致的情况,具体的在另一篇文章中阐述,在此不再赘述。
    wamp2.5多站点配置——localhost的配置

问题

1. 简单描述下web 服务器、PHP、数据库、浏览器是如何实现动态网站的?

  • 用户端访问服务器端的html文件
  1. 输入网址,浏览器查找域名的IP地址;
  2. 浏览器给web服务器发送一个HTTP请求(html);
  3. 服务器处理请求,并发回一个HTML响应;
  4. 浏览器呈现HTML;
  5. 浏览器发送获取嵌入在HTML中的对象,服务器返回资源,浏览器下载;
  • 用户端访问服务器端的php文件
  1. 输入网址,浏览器查找域名的IP地址;
  2. 浏览器给web服务器发送一个HTTP请求(php);
  3. 服务器处理请求,用PHP应用服务器解析PHP代码为HTML代码,并响应;
  4. 浏览器呈现html;
  5. 浏览器发送获取嵌入在HTML中的对象,服务器返回资源,浏览器下载;
  • 用户端访问服务器端的MySQL数据库
  1. 输入网址,浏览器查找域名的IP地址;
  2. 浏览器给web服务器发送一个HTTP请求(php);
  3. 服务器处理请求,用PHP应用服务器打开PHP文件,在PHP文件中通过对连接数据库的代码进行解析,从而连接本机或网络上其他服务器的MySQL数据库,并在PHP程序中通过执行标准的SQL查询语句来获取数据库中的数据,PHP应用服务器将数据生成为HTML静态代码;
  4. 浏览器接收下载解读HTML代码,最终呈现出来。

2. 常见的 WEB 服务器有哪些?

  • Unix和Linux常用的:Nginx、Apache、Lighttpd、Tomcat;
  • window常用的:IIS;

3. 打开浏览器,在地址栏输入http://jirengu.com页面展现了饥人谷官网的信息,整个过程发生了什么?(饥人谷官网后台语言 php,web服务器 nginx,数据库 mysql)

  • 首先输入网址;
  • 浏览器查找域名的IP地址;
  • 查找浏览器缓存;
  • 查找系统缓存;
  • 查找路由器缓存;
  • IPS DNS缓存;
  • 逐层递归,从.com顶级域名服务器到jirengu的域名服务器,最终找到IP地址为:121.40.201.213
通过域名查找IP地址
  • 浏览器打包发送请求报文,中间通过一系列的过程,TCP三次握手等,最终服务器接收请求,如果是HTML请求,则查找HTML文件返回给浏览器,如果是PHP文件则通过PHP应用服务器将查找到的PHP文件生成为静态HTML代码返回给浏览器,如果有数据库请求,则PHP应用服务器通过PHP中连接MySQL数据库的代码,连接数据库并通过标准的SQL查询语句获取数据,然后将其生成为HTML静态代码返回给浏览器;
  • 浏览器接受下载HTML代码,并解析呈现出来。

参考
当你输入一个网址的时候,实际会发生什么?
饥人谷——服务器搭建、svn使用
从输入URL到页面加载完成的过程-DNS解析域名过程
以Apache服务器、php语言为例 详解动态网站的访问过程


本文归饥人谷和本人所有,如需转载请注明来源,谢谢

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,061评论 19 139
  • 1.初学者在本地安装 Apache 与 PHP。安装 xampp 套件即可。XAMPP 里面包含 Apache 和...
    泰格_R阅读 2,962评论 0 0
  • 当我们在浏览器的地址栏输入 www.linux178.com ,然后回车,回车这一瞬间到看到页面到底发生了什么呢?...
    Ddaidai阅读 4,957评论 0 12
  • 1. 简单描述下web 服务器、PHP、数据库、浏览器是如何实现动态网站的? 用户端访问服务器端的html文件通过...
    Maggie_77阅读 2,635评论 0 0
  • 中心图说明: 这次脑图的主题是“偏见”。百度了一幅图,画的是相亲的男子对当女秘书的女子有职业方面的偏见,摆手拒绝,...
    人在陌上阅读 3,607评论 10 17

友情链接更多精彩内容