系列博客说明
《网站搭建从零开始》系列博客 http://www.paincker.com/tag/website-primer
对于完整的学习,强烈建议先阅读《网站搭建从零开始(〇) 内容概要与学习方法》 http://www.paincker.com/website-primer-0
前面已经介绍了网站搭建的两大要素:域名和服务器,而域名解析,就是把域名和服务器进行绑定的过程。
基础知识
实际访问网站时,确定从哪台服务器获取网页,对于计算机来说是通过IP地址实现的。由于IP地址是数字形式,为了便于人们记忆,所以使用了域名和网址机制。
域名->IP地址:在访问网络时,网址会被发送到DNS服务器,然后由DNS服务器返回我们所要访问的服务器IP地址,从而进行访问。这是DNS的工作原理,也是之所以需要设置域名解析的原因。我们要在DNS服务器上设置域名解析,让域名指向服务器空间所在的IP地址。
IP地址->域名:一台服务器上可能有多个网站,或者是子网站,他们共用一个IP地址。这时,我们请求的数据被服务器接收到,服务器需要根据判断网址中的域名来判断返回哪个站点的数据。所以我们还要在自己的服务器空间上绑定自己的域名。即域名和服务器空间的绑定关系是双向的。
配置方法
域名解析的配置分为三个部分内容:
- 给域名设置DNS服务器(在域名提供商网站中进行)
- 在DNS设置域名解析(在DNS服务提供商网站中进行)
- 在服务器空间设置绑定域名(在服务器空间面板中进行)
这三者没有先后关系,但是都设置好才能完成域名解析。
给域名设置DNS服务器
DNS服务常见的都是可以免费使用的,提供DNS服务的如Godaddy,国内的DNSPOD等。如果你是从Godaddy购买的域名,可以直接使用Godaddy的DNS服务,也可以设置成国内的DNSPOD。
下图是Godaddy购买了域名之后登陆账号显示的信息,点击域名产品右侧的Launch即可进入设置界面。
设置界面最常用的一项就是下图中的Nameservers,默认的是Godaddy自己的DNS域名服务器网址,图中我修改成了DNSPOD的地址。
如果使用Godaddy的域名服务器,不需要修改Nameservers,直接点击进入DNS Zone File进行设置。不同的域名服务提供商的设置方法基本相同。
设置DNS服务器的域名解析
下面是DNSPOD中域名解析的设置方法。
首先注册账号并登录,进入界面点击添加域名,按照说明输入你注册的域名,如paincker.com,不需要加http和www,然后点击域名进去设置。
选择添加记录,这里有几个选项。
- 记录类型。最常用的记录类型主要是A记录、CNAME记录,记录类型的含义见下图。
- 主机记录、记录值。设置由 主机记录 指向 记录值。
- TTL。TTL是DNS服务器上刷新记录的时间间隔,如果需要频繁更改IP,记录时间可以短一些,否则应该设置长一点,这样一定程度上会加快访问速度。不了解的话,直接用默认值即可。
我们添加两条记录。
- 记录类型:
A记录
;主机记录:@
,表示http://paincker.com
;记录值:服务器空间的IP地址(空间提供商会给出这个IP地址)。 - 记录类型:
A记录
;主机记录:www
,表示网址http://www.paincker.com
;记录值:还是上述IP地址。 - 第2条记录也可以写成:
CNAME
类型,由www
指向@
。
如果不需要别的子域名、邮件等服务,DNS就已经设置好了。如图,其中有两项是NS类型记录,即域名记录。
服务器空间对域名的绑定
URL解析与重定向
假设域名 www.paincker.com
绑定了服务器空间,且网站根目录为空间中的/mysite/
目录。
- 默认情况下,输入网址
www.paincker.com
,打开/mysite/index.html
;如果没有,则打开/mysite/index.php
文件(对于运行php的服务器来说)。 - 如果没有
index.html
和index.php
,根据服务器的设置,可能会显示这个文件夹的文件列表。 - 输入网址
www.paincker.com/folder
,则默认打开/mysite/folder/
文件夹中的相关文件,规则同上。 - 可以通过设置
.htaccess
文件改变上述规则,这里不做详细说明。 - 网站程序可以重定向URL,改变上述规则。
确定网站根目录
绑定域名的时候,会让你选择站点根目录,然后绑定一个域名。
- 如果你只有一个网站,可以直接把站点根目录设置为空间根目录,并绑定域名,即
paincker.com
绑定到/
。 - 如果你觉得这样不方便,有点乱,你也可以设置绑定到一个子目录,例如
paincker.com
绑定到/my_website/
。 - 即使只有一个网站,也推荐使用后者。因为在空间根目录下可能还有备份等其他文件,使用前者则这些文件暴漏在网站根目录下,则通过网址可以访问,不够安全。
下图是我的网站设置。
测试域名解析是否成功
设置完成后记得保存。如果你很激动的马上访问你的域名,可能会发现提示域名错误等,这是因为这些设置并没有立即刷新,需要等待几分钟直到全球的DNS服务器都进行了刷新才行。
如果你只设置了DNS,把域名指向服务器IP,没有设置空间绑定域名,这时可以用cmd的ping命令ping到服务器IP,但不能访问网页。
一开始我只买了域名还没有主机,看到CNAME可以设置域名指向另一个网址,然后就尝试设置主页指向百度,一直没成功。直到后来才知道,原来主机和域名是需要相互绑定才能访问的。
有些服务器空间会自动放置了一个默认的index.html
到网站根目录,用浏览器访问网址就能显示index.html
的内容。如果空间里面现在还没有内容,可以自己上传一个index.html
文件到站点根目录。
下一篇将会开始讲解在服务器上搭建网站的知识。