用DNSPod和Squid打造自己的CDN全程分享
程序员文章站
2023-11-11 15:05:46
本教程面对的对象是个人站长,所以各方面会力求傻瓜化,让大家都能看懂。当然,前提是需要你要有一颗好学的心,还有坚韧的毅力。另外一方面,本篇文章基本不会涉及到windows的内...
本教程面对的对象是个人站长,所以各方面会力求傻瓜化,让大家都能看懂。当然,前提是需要你要有一颗好学的心,还有坚韧的毅力。
另外一方面,本篇文章基本不会涉及到windows的内容,整套系统将会是架构在centos linux 5上。别问我为什么不是windows,因为windows只能拿一个字形容:烂。不喜欢linux,或者认为linux学习起来有困难的朋友,可以到此打住。
可能有人要问,为什么是linux,而不是freebsd?因为freebsd不管从系统的优化配置,还是文件系统的性能,都不合适初学者。
先前说过,本篇文章针对的是没有多少技术基础的个人站长,所以文章内会有linux的安装、基本操作等一些东西教给你,让你学得简单,时间花得有价值。
再罗嗦一下,在接下来的时间内你将要面对一个黑漆漆的,全是英文的屏幕,请做好心理准备。
注意:本篇教程将*不会*涉及到以下内容:
1.动态内容(比如bbs)
2.大文件(比如软件下载站的软件)
第 1 章 cdn和智能dns
1.什么是cdn
简单来说,cdn就是能让你的网站访问起来更加快的东西。例如网通用户访问了你在网通的cdn服务器上面某个文件,cdn系统就会判断这个文件是否被请求过,如果被请求过,在没有失效的情况下,就会从系统的缓存里面读取这个文件并返回给用户。如果这个文件没有被请求过,那么cdn会自动从你的主服务器上面获取这个文件,然后缓存到cdn系统内,再给用户返回。
看到这里,聪明的朋友就会问:如果网通的cdn服务器,访问我在电信的主服务器速度很慢,那么是不是用户第一次请求这个文件的时候会很慢?嘿嘿,恭喜你,的确是这样。并且,在文件没有完全缓存到cdn上面的时候,所有访问这个文件的用户都会出现错误,比如网页打开不完整,文件下载到一半等。但只要你的网站访问量足够大,这个影响对用户来说是微不足道的。
然后还有朋友会问,为什么商业的cdn不存在这个问题?因为,商业的cdn有自己租用的线路,自己走路由。这就是商业cdn卖得如此之贵的原因。当然,如何走这个路由,搭建这么一个大型的cdn系统,不在本文的讨论范围以内。
2.什么是智能dns,什么是dnspod
智能dns的原理很简单:在用户解析一个域名的时候,判断一下用户的ip,然后跟dns服务器内部的ip表匹配一下,看看用户是电信还是网通用户,然后给用户返回对应的ip地址。
dnspod是奶罩同学旗下的网站,提供免费的智能dns服务。你只需要把你域名的dns从原来的注册商改为dnspod,马上就可以享用这个服务了。
注意了:dnspod只提供域名的智能解析服务,不提供域名也不提供服务器,千万不要以为把你的域名转到dnspod就能成为双线了。
第 2 章 前期准备
要继续后面的步骤,你必须要准备以下东西:
域名一个
服务器两台,电信网通各一台,一般的p4即可,内存2g以上
空白dvd r+光盘一张(或者cd-r 6张)
dvd刻录机一个(或者cd rw刻录机一个)
然后,你还需要去下载centos的iso镜像
随便在下面的镜像地址挑一个,暂时没有国内的,建议挂一个迅雷慢慢下
http://ftp.ncnu.edu.tw/linux/centos/5.0/isos/i386/
http://ftp.cse.yzu.edu.tw/pub/centos/5.0/isos/i386/
http://ftp.cs.pu.edu.tw/linux/centos/5.0/isos/i386/
http://ftp.tcc.edu.tw/linux/centos/5.0/isos/i386/
打开上面的网址后,你可以发现类似下面的文件名
centos-5.0-i386-bin-1of6.iso
…
centos-5.0-i386-bin-6of6.iso
这些是cd镜像,一共有6个,下载刻盘比较浪费资源,所以我建议下载下面这个dvd镜像
centos-5.0-i386-bin-dvd.iso
废话不多说,下载回来后刻盘即可。
之后,为资源做一个安排,所以下面将会做一个假设:
假设域名为naizhao.com
假设两台服务器,电信的服务器为a,网通的服务器为b
假设a服务器为内容服务器,b服务器为cdn服务器,b服务器所有需要的内容均从a服务器取得
假设a服务器的ip是1.1.1.1,b服务器的ip是2.2.2.2
ok,到这里后我们所需要的东西基本准备好了。iso可能还没有下载好,不急,慢慢挂着,我们先来把域名的dns设置好
另外一方面,本篇文章基本不会涉及到windows的内容,整套系统将会是架构在centos linux 5上。别问我为什么不是windows,因为windows只能拿一个字形容:烂。不喜欢linux,或者认为linux学习起来有困难的朋友,可以到此打住。
可能有人要问,为什么是linux,而不是freebsd?因为freebsd不管从系统的优化配置,还是文件系统的性能,都不合适初学者。
先前说过,本篇文章针对的是没有多少技术基础的个人站长,所以文章内会有linux的安装、基本操作等一些东西教给你,让你学得简单,时间花得有价值。
再罗嗦一下,在接下来的时间内你将要面对一个黑漆漆的,全是英文的屏幕,请做好心理准备。
注意:本篇教程将*不会*涉及到以下内容:
1.动态内容(比如bbs)
2.大文件(比如软件下载站的软件)
第 1 章 cdn和智能dns
1.什么是cdn
简单来说,cdn就是能让你的网站访问起来更加快的东西。例如网通用户访问了你在网通的cdn服务器上面某个文件,cdn系统就会判断这个文件是否被请求过,如果被请求过,在没有失效的情况下,就会从系统的缓存里面读取这个文件并返回给用户。如果这个文件没有被请求过,那么cdn会自动从你的主服务器上面获取这个文件,然后缓存到cdn系统内,再给用户返回。
看到这里,聪明的朋友就会问:如果网通的cdn服务器,访问我在电信的主服务器速度很慢,那么是不是用户第一次请求这个文件的时候会很慢?嘿嘿,恭喜你,的确是这样。并且,在文件没有完全缓存到cdn上面的时候,所有访问这个文件的用户都会出现错误,比如网页打开不完整,文件下载到一半等。但只要你的网站访问量足够大,这个影响对用户来说是微不足道的。
然后还有朋友会问,为什么商业的cdn不存在这个问题?因为,商业的cdn有自己租用的线路,自己走路由。这就是商业cdn卖得如此之贵的原因。当然,如何走这个路由,搭建这么一个大型的cdn系统,不在本文的讨论范围以内。
2.什么是智能dns,什么是dnspod
智能dns的原理很简单:在用户解析一个域名的时候,判断一下用户的ip,然后跟dns服务器内部的ip表匹配一下,看看用户是电信还是网通用户,然后给用户返回对应的ip地址。
dnspod是奶罩同学旗下的网站,提供免费的智能dns服务。你只需要把你域名的dns从原来的注册商改为dnspod,马上就可以享用这个服务了。
注意了:dnspod只提供域名的智能解析服务,不提供域名也不提供服务器,千万不要以为把你的域名转到dnspod就能成为双线了。
第 2 章 前期准备
要继续后面的步骤,你必须要准备以下东西:
域名一个
服务器两台,电信网通各一台,一般的p4即可,内存2g以上
空白dvd r+光盘一张(或者cd-r 6张)
dvd刻录机一个(或者cd rw刻录机一个)
然后,你还需要去下载centos的iso镜像
随便在下面的镜像地址挑一个,暂时没有国内的,建议挂一个迅雷慢慢下
http://ftp.ncnu.edu.tw/linux/centos/5.0/isos/i386/
http://ftp.cse.yzu.edu.tw/pub/centos/5.0/isos/i386/
http://ftp.cs.pu.edu.tw/linux/centos/5.0/isos/i386/
http://ftp.tcc.edu.tw/linux/centos/5.0/isos/i386/
打开上面的网址后,你可以发现类似下面的文件名
centos-5.0-i386-bin-1of6.iso
…
centos-5.0-i386-bin-6of6.iso
这些是cd镜像,一共有6个,下载刻盘比较浪费资源,所以我建议下载下面这个dvd镜像
centos-5.0-i386-bin-dvd.iso
废话不多说,下载回来后刻盘即可。
之后,为资源做一个安排,所以下面将会做一个假设:
假设域名为naizhao.com
假设两台服务器,电信的服务器为a,网通的服务器为b
假设a服务器为内容服务器,b服务器为cdn服务器,b服务器所有需要的内容均从a服务器取得
假设a服务器的ip是1.1.1.1,b服务器的ip是2.2.2.2
ok,到这里后我们所需要的东西基本准备好了。iso可能还没有下载好,不急,慢慢挂着,我们先来把域名的dns设置好
(未完,待续)
推荐阅读
-
用DNSPod和Squid打造自己的CDN (四)
-
用DNSPod和Squid打造自己的CDN (三) 安装CentOS Linux
-
用DNSPod和Squid打造自己的CDN (五) 安装Squid的前期准备
-
用DNSPod和Squid打造自己的CDN(二)
-
用DNSPod和Squid打造自己的CDN (七) 配置Squid
-
用DNSPod和Squid打造自己的CDN全程分享
-
用DNSPod和Squid打造自己的CDN (六) 编译并安装Squid
-
用DNSPod和Squid打造自己的CDN(二)
-
用DNSPod和Squid打造自己的CDN (七) 配置Squid
-
用DNSPod和Squid打造自己的CDN (五) 安装Squid的前期准备