随谈:2011-04-13 国外主机面板的简评

王志勇 发表于 2011年04月13日 08:31

本文的中心主要是对cPanel的讨论,以及我使用过的一些国外虚拟主机面板的简评,将这些面板进行对比,取各自的优点,从而让读者了解什么样的功能是更方便的、以及什么样的功能是很不方便的。cPanel是一款十分优秀的虚拟主机面板程序,已经被国内外很多主机商所采用,是很明智的选择,因为比较少有比cPanel更好的虚拟主机面板程序。然而cPanel如果被广泛应用的话,似乎仍然是一个半成品,有着关键的不足。如果cPanel仅被少数的空间商使用的话,问题还不大,这一家的面板不好用就换另一家的主机;可是一旦被广泛地应用,问题就出来了,因为cPanel的不足被广泛地再次复制,到处都是有问题的面板,换了一家还是一样的问题。

cPanel最大的优点是无需独立IP即可支持泛域名解析。添加泛域名解析的方法,例如先在域名面板添加*号的二级域名,然后在cPanel添加abc.com的主域名,添加二级域名的时候输入*号即可。我使用过Go Daddy和IX Web Hosting的虚拟主机,它们都是不支持泛域名解析的,但由于它们都能提供独立IP,可以通过独立IP的方法实现泛域名解析,可是这样成本很高。大家通过在本机使用Apache建立泛域名解析,就可以了解泛域名解析的原理,只是增加了一个*.abc.com的二级域名,并不会增加服务器资源,请见我写的这篇:http://www.auiou.com/relevant/00000573.jsp。相反,会节省服务器资源。因为当不支持泛域名解析时,依次手工增加很多个二级域名,Apache的配置文件会增大,所以当手工依次添加的二级域名多时,肯定是会增加服务器资源的;添加一条泛域名解析的记录,反而会节省资源。由此可见,各虚拟主机在技术上是可以轻松支持泛域名解析的,方法就是添加*号的二级域名,可是由于他们禁止输入*号的二级域名,所以就相当于禁止了泛域名解析。请您注意:泛域名解析是被禁止了,而不是真的不支持。所以在功能上,所有的Linux+Apache主机是可以十分轻松地、直接支持泛域名解析的,只是被“禁止”了。二级域名、泛域名解析的作用在前面已经谈过了,主要是为将来的流量分流作预留,便于站点的流量拆分而保持域名不变。

cPanel的优势主要是允许泛域名解析,其它功能与各大虚拟主机商自己开发的面板比较起来,cPanel几乎没有多大优势了。cPanel如果是他们自己使用的话,有不足的时候他们自己可以随时改进;可是当有问题的cPanel被广泛地应用之后,这些不足是很难解决的。任何稍大的程序,通常只有程序的原开发者能够进行再次开发、修改。即使是顶尖的程序员,也很难开发别人的程序。因为一个应用型的成品程序,语句太多,信息量太大,需要有原开发者的开发文档、思路才可以进行再次的开发,并且需要先花费难以估量的、海量的时间去读懂所有的程序。即使是原开发者,如果经过了很长时间,要读懂自己写过的程序,也需要花费一定的时间。由于这么高的技术门槛,就像使用discuz,wordpress等程序一样,使用者一般是无法修改程序的。还不如自己从零开始全新开发一个程序,要比修改别人的程序相对容易许多。

cPanel在一些关键的功能上没有选项,而是默认的设置。例如在一些版本上必须把域名的DNS修改为指定的DNS才可以添加域名,这一点是十分不必要的,毫无意义。它的存在,是由于上面所述,一是这种不足被广泛地复制,二是使用者(空间商)又无法修改程序,其实早就应该取消掉这一繁琐的步骤。另外,由于cPanel自带DNS功能,有一些强制修改DNS才可以添加域名的cPanel,同时还有另一个问题,就是无论域名使用哪里的DNS,服务器对域名下的子域名的解析,不是从域名所在的DNS提取的,而是全部从这个cPanel的DNS中提取的。例如,abc.com使用GD的DNS,主机A使用cPanel并且强制修改DNS才可以添加域名,先把DNS改为主机A指定的DNS,添加域名后再改为GD的DNS。这时使用gethostbyname()函数返回abc.com的二级域名,会发现无法解析为IP,这时在cPanel的Simple DNS Zone Editor功能中添加这个二级域名,再使用gethostbyname()函数测试,有的cPanel主机可以立即解析,有的cPanel主机则仍然无效。由于cPanel这个的问题,域名不能被正常解析,导致无法使用远程数据库。如果您使用的主机的cPanel版本,没有强制修改DNS才可以添加域名,则不存在这两大问题。

cPanel还有一大缺点,购买主机时强制添加一个主域名,添加的域名列表十分混乱。在这一点上,GD和IX自己开发的主机面板则不存在这个问题。GD有强制添加主域名,IX没有强制添加主域名。GD和IX添加的域名列表很整齐,都是在第一页显示顶级域名,子域名都是放在顶级域名的下一级,点击超链接就可以对子域名进行管理。而cPanel,强制添加一个主域名例如我们添加def.com,当添加abc.com的新域名时,会产生一个abc.def.com这个毫无意义的二级域名。在cPanel的Subdomains里,这些自动产生的毫无意义的例如abc.def.com的二级域名,会显示在里面;并且不同域名的子域名,都是放在一起的,当域名稍微多一些,就会变得十分凌乱。不过好在cPanel提供搜索功能,只要搜索关键词abc,就可以显示所有的子域名。

在错误日志和访问日志方面,IX主机是做得最好的,IX开发的面板可以选择关闭/开启访问日志,以节省服务器资源;IX的PHP报错,默认是关闭的。GD和cPanel,都无法关闭访问日志。cPanel的错误日志,十分灵敏,只要出现PHP报错,就会在与程序文件同一级目录产生一个error_log的文件。对于一些访问量大的网页,如果经常出现PHP报错,这个error_log文件很快就会变成几兆~几百兆。所以我现在是在PHP网页中写入error_reporting(0);语句,使其不会报错,这样是为了避免产生error_log文件。

cPanel还有一个缺点是添加域名时会强制建立一个新的FTP帐号,并且要输入密码,这一点是不必要的。而且输入密码后,总是会提示不匹配,这可能是AJAX存在问题,解决的办法是输入之后,然后点击网页的空白处,再点击文本框,再输入,多试几次,就会出现绿色的勾。

cPanel似乎有很多个版本,我使用过至少六七个使用cPanel为面板的不同空间商的主机,有些功能是不一样的,但是大体相似。最后需要提一点的是,在国内,GD空间比IX空间访问速度快,在前面已经写过几篇了,本博客现在使用GD空间。

3条评论:
1   小洁 2011-04-13 20:48
用了这么久的cpanel 今天才发现对其了解甚少
2   moonswamp 2011-04-13 22:24
不管怎么说,cpanel还是目前最简单易用的控制面板!
3   hey33 2011-04-14 08:11
恩 一直cpanel感觉质地的还是很少 哈哈 长见识了

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (41周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2021年06月(9)
2021年05月(17)
2021年04月(25)
2021年03月(6)
2021年02月(17)
2021年01月(30)
2020年12月(19)
2020年11月(18)
2020年10月(15)
2020年09月(14)
2020年08月(14)
2020年07月(14)
2020年06月(16)
2020年05月(13)
2020年04月(18)
2020年03月(14)
2020年02月(15)
2020年01月(16)
2019年12月(11)
2019年11月(26)
2019年10月(25)
2019年09月(30)
2019年08月(10)
2019年07月(29)
2019年06月(30)
2019年05月(26)
2019年04月(30)
2019年03月(30)
2019年02月(30)
2019年01月(30)
2018年12月(30)
2018年11月(30)
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2021 auiou.com All rights reserved.
此Blog程序由王志勇编写