作为一个php新手,我一直在寻找着一种快速而有效的学习方法,最后发现,快速掌握知识最快的方法就是输出,把自己学过的知识从新整理,拿出来给大家看,同时也要学会总结归纳,同一些高手交流,才能最快把知识融入自己,从而强化技能,提升能力。
博客园是一个学习的好地方,相同的问题,有不同的解决方案,能够很快的扩大自己的见识和知识体系。能跟更多爱好相同的人在一起讨论问题,是一件很令人开心的事情。
第一天学习笔记。
一、概念了解
1.什么是ip地址
互联网上的每一台电脑或者设备,都有唯一的编号,这个编号不会重复,类似于人类的身份证号码。ip地址就好像电话号码(地址码):有了某人的电话号码,你就能与他通话了。同样,有了某台主机的ip地址,你就能与这台主机通信了。iP地址最常用点分10进制表示,如192.168.0.1。有人会以为,一台计算机只能有一个ip地址,这种观点是错误的。我们可以指定一台计算机具有多个ip地址,因此在访问互联网时,不要以为一个ip地址就是一台计算机;另外,通过特定的技术,也可以使多台服务器共用一个ip地址,这些服务器在用户看起来就像一台主机似的。
每一台电脑都有一个特殊的ip地址,这个ip地址通常用于本机的软件测试或者网站测试,同时,外部的设备是不能访问这个ip的,只能自己访问自己。 ip地址为:127.0.0.1
2.什么是域名
电脑与电脑之间连接靠的是ip地址(电脑连接不是靠域名,而是靠ip),但是ip地址为数字,记起来比较麻烦,所有人们就创建域名这个概念,每个域名都会有对应的ip地址,这样的话人们可以很容易的记住域名,更方便的进行通信。
域名的命运规范和php中变量的命名规范相似:
www.baidu(字母,数字,下划线).com(域名后缀)
域名可以根据后缀的不同分为很多类,如图:
当然,与特殊ip相对应的,每个电脑都有一个自己的特殊域名,这个域名就是: localhost
和特殊ip一样,他也可以用来自己访问自己。
3.什么是DNS
DNS是一台服务器,他主要的作用是将域名转化为ip。由于电脑间的通信不能通过域名的方式,那么就需要一台电脑将域名翻译成ip,所以就产生了域名解析系统,类似于有一台计算机连接互联网中,1天24小时运行,用来解析域名,DNS服务器中存储的是ip地址和域名的对应关系表。
当然,每一台电脑都会有本地的DNS,ip和域名的对应关系存在一个hosts文件中,可以手动进行更改和添加。
运用命行的方式可以查询域名对应的ip地址: nslookup www.baidu.com
二、网站浏览基本流程流程
要学习php,我们首先要了浏览网站时内部原理的工作流程。
1.当我们打开浏览器的时候,首先是在地址栏里输入地址,电脑会拿着我们输入的域名在再自己的DNS文件中寻找对应的ip地址,如果自己的DNS文件中没有找到对应ip,才会到互联网上的DNS服务器中查询,找到后再将对应ip发送到自己的电脑,然后执行类似于在地址栏中输入ip地址的操作,找到对应网站的主机,便可以浏览网站了。
2.在浏览网站的过程中,客户端发送http请求到相应的服务器,Apache服务器在接受到请求后,判断请求文件的扩展名,如果是html,则Apache可以直接处理。在网站当前控件中找到指定文件,将文件的源代码返回给浏览器,浏览器接受到http请求返回的数据:html,css,js,将这些源代码翻译成图文并貌的效果呈现给用户。
3.在第2步中,如果Apache接受到请求扩展名为php的文件,则Apache不认识。它需要将php文件交给php脚本引擎来处理,当php不涉及数据库,则php脚本引擎处理完成后返回给服务器,服务器再将数据传达浏览器,给客户呈现。
4.php引擎在处理是如果发现需要调用数据库,则又需要到数据库服务器中取数据,取到数据后再将数据给服务器,服务器返回给浏览器,整个过程完毕。
如下图:
今天已经很晚了,明天继续。