一、
ip在网卡上,如果一台电脑只有一张网卡的情况,则这台电脑就有这一个ip地址。
然后每台电脑也有域名,ip太难记了,所以直接用域名。
比如:我们本地的这台电脑(正在用的,自己的那台电脑,本机)的ip地址是127.0.0.1,而他的域名就是localhost。
再比如:作为百度的服务器的那台电脑,其域名是 www.baidu.com,ip是119.75.213.36。
二、
而域名和ip是一一映射的,映射关系存在DNS中。
三、
假设我拿自己的电脑作为我自己个人网站的服务器,并不意味着,我这台电脑只能做服务器,再也不能打飞车了,————》因此不得不思考一个问题,别人要访问我的网站,就得访问我电脑上这个服务器,怎么访问呢?
访问ip,那确实访问到我的电脑了,
但如果想更进一步访问我的这个网站服务器,就需要知道 端口号。(此处指虚拟端口,不是物理端口)
所以IP协议规定: 域名:端口号
四、
我们平时说的服务器,其实就是一台电脑,一台装了服务软件的电脑,如软件Apache。这台电脑里还要有一个装数据的文件夹。
五、
软件Apache主要做什么?
根据URI获取文件,读取文件里面的内容---》返回数据给浏览器
URI:统一资源标识符(Uniform Resource Identifier,URI) 比如,127.0.0.1:80/index.html (标识了相对路径,即“根目录下的index.html文件”)
六、
Apache返回数据给浏览器之后,并不是就完了。下一步:浏览器进行解析。
如果Apache找不到文件(如,找不到index.html),就会返回错误
以上主要是讲 静态网站,而访问动态网站,中间会发生什么?(与静态网站有几点区别)
- 服务器中那个文件夹,放的数据 不是xxx.html这种静态网页了,而是xxx.php
- Apache不能直接读取php内容。而是交给PHP引擎去读文件,PHP引擎读取PHP代码之后进行解析,解析的过程可能需要操作数据库(注意,数据库可能不在这台电脑了,有可能用另一台电脑来提供 数据库服务功能)——此处操作数据:不一定只是取数据,数据库四大功能“增删改查!”所以也可能是要增加数据(比如注册用户)
- PHP引擎读到的是php代码,但是它读完之后,也操作了数据库之后,交回给Apache的是html内容(因为浏览器只能读html文件)
PS:纯属个人学习之余的理解,很多东西可能用词不准确或者描述不准确,只是为了简单描述以便自己理解,也分享给有需要的人。