网站镜像(mirror sites, mirrors;镜像站点,镜像网站)是指对网站内容的拷贝,这类网站通常具有与原站不同的URL,但托管了相同或者是几乎相同的内容。镜像原意是光学里指的物体在镜面中所成之像。引申到电脑网络上,镜像通常用于为相同资讯内容提供不同的源,特别是在下载量大的时候提供了一种可靠的网络连接。[1]制作镜像是一种文件同步的过程,可以以多种网络协议(network protocol)进行传输(如HTTP、FTP等)
![]() | 此条目可参照英语维基百科相应条目来扩充。 (2020年2月23日) |
镜像的目的
创建镜像的目的通常有以下几个:
- 保存网页资讯,特别是在一个网站面临关站的时候。
- 提高用户在某个地区的下载速度。譬如一个美国网站的中国镜像可以使来自中国的用户直接从这个中国的镜像访问,从而加快了速度。这可以看作是一种全球范围的缓存。
- 对不可用的资讯提供连接途径。避开对于主网站的审查和屏蔽。例如,2002年中国大陆封锁Google搜索时,镜像站点elgooG成为了有效的绕过封锁的途径。
- 保存历史性的数据、资讯,防止丢失。
- 平衡网站的流量负载。例如,一个Linux的发行版的ISO镜像文件的大量下载可能会导致主站过荷而下线,而镜像站点则可以在多个伺服器分担流量,从而保证站点的持续在线。
- 对因流量激增而下线的站点提供临时的访问。
- 便于不同地区或不同ISP(如中国电信和中国联通的互访问题)的人获得更快的访问速度。
创建镜像站点通常是由于网络带宽限制、封锁或是其他原因,导致无法实现对主站点的正常访问。这时通过将主站点的资讯资源移植转移到相对容易访问的本地伺服器,以提高用户的访问效率。常见于内部网、校园网或是其他有较大存储装置的伺服器。较小的网站有时也以镜像来应对封锁、屏蔽(参见防火长城)。
通过镜像站点,也可以实现多目标多线程的快速下载。例如GetSmart和GetRight正是使用了这种高级的多线程下载技术。
建立镜像的方法
一般而言,网站镜像可以大致分为两种:
一是以突破网络审查为目的(例如维基百科镜像网站)或是待镜像的网站本身是一个不断更新的动态网页,这种情况一般使用反向代理的方式,常见的反向代理工具是nginx。
另一种情况则是通过缓存待镜像的网站(一般是静态页面)数据达到镜像的效果,例如开源软件镜像站,这些网站一般使用rsync进行数据同步。