微信公众号 CCBible/Bible101/DBible 微博@基督徒百科@Bible101@歌珊地圣经引擎@如鹰展翼而上 QQ群 4619600/226112909/226112998 同步推送#今日真道圣言#

网站建设

来自基督徒百科
跳到导航 跳到搜索

站长常用资源汇总

一、服务器篇

推荐服务器机房

亚马逊 AWS (第一年使用基本服务免费),参考:Amazon AWS 漫游指南用Amazon EC2搭建免费WordPress博客及SSH

服务器监控

http://www.cacti.net/screenshots.php http://www.nagios.org/about/screenshots

网站机房位置测试

http://www.ip2location.com/64.120.209.80

测试某国外网站国内是否可以访问的网站

http://www.websitepulse.com/help/testtools.china-test.html http://ping.aizhan.com/ http://www.webkaka.com/Ping.aspx http://ping.chinaz.com/ http://www.site24x7.com/check-website-availability.html http://www.jiankongbao.com/labs/http

Live Benchmarks from the Cloud

http://www.cloudlook.com/

推荐一个工具,可以测试国内部分代表性网络接入方式到某个服务器的ping值

http://www.webkaka.com/Ping.aspx 过但从ICMP Ping来判断封禁过于简单了,目前GFW主要用的方式有IP封禁,DNS污染,深度包关键词检测,特定端口封禁,SSL通讯间歇性干扰。

二、域名篇

国内免费的动态DNS

http://dnspod.cn http://dnspod.com,国内国外有别。


三、建站篇

  • 博客或文章类(CMS)网站,推荐使用WORDPRESS(点击查看详细内容)
  • 论坛、社区类网站,推荐使用Discuz以及相关配套系统
  • 其它待霍弟兄补充


四、网站安全篇

设定 htaccess 密码的网站

http://www.kxs.net/support/htaccess_pw.html 谷歌 Google CSE tool: http://www.google.com/cse/tools/cref


五、网站美化篇

Css framework很适合我们这类形象思维能力没天分的人,推荐:

http://www.blueprintcss.org/ http://www.yaml.de/en/

QQ动态表情

http://www.ziq.com/tag/

这里有一些开源播放器介绍,且有在线演示和下载,看看我们用哪个好

http://www.open-open.com/ajax/Video.htm http://www.google.org.cn/posts/vp8-open-sourced-and-google-introducing-webm-open-web-media-project.html

方便的LOGO智能生成工具

http://free.logomaker.cn/ 上面这个比Leo弟兄推荐那个英文版的www.logomaker.com/ 这个刚发现的 http://logo.chinaz.com/ 和上面那个差不多

在线生成动态GIF的网站

http://www.picasion.com

http://www.900.la/ http://www.55.la/


六、电子邮件篇

电子邮件群发工具

better to use paid service but there are still some free provider

Free for personal use http://tinyletter.com/

Free for list smaller then 2500

http://newsletter.ie/E/home/login.aspx?a=1

Free for less then 2000

http://mailchimp.com/




网站建设技术探讨

现在流行云计算,网格计算,分布式系统,网络系统。因为天气原因,国内的网站非常的不稳定,可能域名被停止解析或者无法解析,可能服务器所在的机房被停电或者服务器被关机抬走,而其中很多都是误操作,因为有人为的因素。那么怎么办呢?需要使用镜像技术。

现在的大的网站都是服务器集群,流量均衡,等等,他们自然有一套完整的方案。那么中小网站怎么办呢?

本人还未做过广泛调查,在此提出个人的浅见,抛砖引玉。

我们使用镜像技术来实现。前提:DNS必须稳定,因此要把DNS移到不经常刮风下雨的地方,比如美国的雨棚里;同时为了防止被排除在“域名白名单” 之外,必须要进行域名网站的备案注册;最后且最重要的是,必须要遵守当地的法律法规,比如不能涉黄,比如不能政治反动政治敏感和企图颠覆国家政权、泄露国家机密等等,当权者不允许的,或者还没有获得许可的,不要做。我们要做的是在合法的前提下,防止人为因素的误操作,并给自己留下弥补失误的机会。

OK

一般来讲,静态页面镜像非常简单,只要把所有源文件和附件文件通过FTP上传到备份网站即可。但是对于动态页面就麻烦,它包括静态的源文件(包括图片等附件文件),动态的(用户动态上载的)附件文件,和数据库。静态源文件最简单,关键是动态附件文件和数据库的同步请注意,不是备份而是同步,备份很简单。什么是同步呢?比如有甲乙两个镜像站点互为备份要进行同步,在时间点1,二者一致,之后站点甲添加了项目A,修改了项目B,删除了项目C,而站点乙添加了项目X,修改了项目Y,删除了项目Z,需要在时间点2之前同步甲乙二站点,保证两个站点都添加了项目A,X,修改了项目B,Y,删除了项目C,Z。而且如果站点甲乙各自修改了同一样一个项目J,也要两个站点都能同步。

怎么实现?问题过于复杂,需要先简化。

首先,所谓同步,需要时间先同步

也就是说需要时间同步机制,可以使用互联网时间协议同步服务器的时间。不过有更简单的方法就是使用客户端本地的时间,作为主要的时间基准。

简单的将,就是根据服务器上的项目移到本地之后,以本地时间为准。现在多了个本地站点,以本地站点为基准,做起来就会非常的简单。

现在流行的网络架构是客户机/服务器两层模型结构,或者客户机/应用服务器/数据库服务器三层甚至更多层结构,而在应用服务器之前要有防火墙和流量均衡控制。数据库信息是最敏感最需要安全保护的,因此,千万不要尝试着不同站点的数据库之间进行直接的通讯同步,太危险(当然现在的分布式数据库除外,而我们还不能用他们)。这个时间服务器必须足够安全,不能放在经常下雨的地方。它可以是个服务器,也可以是你自己的笔记本,只要保证可靠即可。

其次,镜像服务器的服务和同步策略

学过操作系统我们知道多处理器处理分为非对称多处理和对称多处理SMP,当然对称多处理好,因为每个处理器都是相同的角色,如果有个处理器坏了,系统会自动重构。与之相比拟,我们的镜像站点之间应该也是对称多处理,即不区分谁是主服务器,谁是从服务器(刚才讲的时间服务器除外,它必须做主服务器)。服务器1坏了,服务器3马上顶上。怎么实现呢?利用域名服务器。前面讲过该域名服务必须足够可靠,不能放在风雨交加或者经常动不动就没有征兆刮风下雨的地方。例如Godwithus很与我们同在网站有四个镜像,其中一个是主站(当然这个不符合我们的规则,但是可以把主站作为时间服务器,其他三个服务器作为对称多处理SMP服务器)。主站如果Shutdown了那么没戏了。OK,我的四个域名 主站 http://godwithus.cc,三个SMP服务器:美国站 http://us.godwithus.cc,中国站 http://cn.godwithus.cc (http://www.godwithus.cn),移动站 http://mobi.godwithus.cc (http://godwithus.mobi)。那么还有个首页http://www.godwithus.cc,它实际上是指向三个SMP站点之一,哪个好指向哪个,哪个出问题了指向下一个。因此用户访问godwithus.cc或者www.godwithus.cc应该总是能访问到服务的,除非它处在某个国家或者地区的“国域网”范围内或者他自己断网了。

第三,具体的同步方法

利用时间主服务器,一切都以他为基准。学过数据库的都知道,备份策略分为海量(整体)备份和增量备份;支持事务处理的DBMS往往要先写日志在写数据以保证ACID。时间服务器上的数据永远是一致的。在时间点1,所有的SMP服务器都和时间服务器一致,之后服务器甲乙各自修改了其内容,到了时间点 2,需要同步了。

这里插一段,SMP很好,但是实现很复杂,还有个简单的方法就是采用主从结构,而这个主服务器是根据情况切换的。实现很简单,每到一个同步时刻,直接把主服务器上的源文件、附件和数据库数据复制到各个从服务器即可。它的缺点是会丢失从服务器上的修改数据,但是我们如果可以保证让从服务器上只读,而只让用户访问主服务器即可。例如,在时间段A,我的http://www.godwithus.cc是指向 http://cn.godwithus.cc的,这个时候大家都访问的http://cn.godwithus.cc,修改的都在它上面,把它作为主服务器。某个时间以后,cn坏了,我就把http://www.godwithus.cc指向http://us.godwithus.cc,把它作为主服务器。当然时间服务器http://godwithus.cc是我自己的,它不会坏。

那么SMP呢?比如让美国人访问美国服务器,电信用户访问电信服务器,联通用户访问联通服务器,而移动用户访问移动服务器,这样用户体验很好,因为速度快。它怎么实现呢?也很简单,在时间点2,按照顺序把每个SMP服务器与时间服务器的数据比较,产生差异数据DIFF,所有服务器的DIFF文件都产生好之后生成总体的DIFF,然后在恢复到各个SMP服务器去。

具体实现,如果是自己写代码很简单,每个表格除了ID字段之外,增加一个全局ID(GID)和全局时间(GTime),用来同步用,GID是全球唯一的,平时local的SMP服务器在添加字段的时候GID和GTIME字段是NULL,只有同步后才有了值。如果是使用商业工具护着开源工具,就不能修改其代码,必须要保证其可升级性。方法就是采用附加字段的方法。在这里我呼吁一下,大家尽量使用开源或者商业工具,比自己一个人写的代码好很多,问道有先后,树叶有专攻,人家一个大的开发团队,肯定别我们个人写的东西要好。我们在其工具的基础上修改,然而只修改其允许我们修改的地方,必须保证其兼容性和可升级性。例如对于Wordpress博客程序,我们可以来设计我们自己的主题模板,但是千万不要动其数据库的字段。

我们附加的数据库只存在于时间服务器上,只用作作于同步,目的就是给每个表格的记录增加GID和GTIME字段。我们其实只要建立一张表即可,它包括:SERVER_ID, DB_ID, TABLE_ID, RECORD_ID, GID, GTIME。相信其他的不需要我多说了。

第四,题外话

关于华人主内网站整合,我发现真的很难。因为没有人会愿意放弃自己的品牌和域名和自己辛辛苦苦开发和经营的程序及服务。但是我们必须要虚己,必须要首先看到现在需要的是什么,其次是我什么可以做到最好,然后再做,不要贪多自己什么都要做,也要学会放弃,选择其实就是放弃,为了神,生命都可以摆上祭坛,还有什么不可以放弃的呢?目的只有一个,“做”“好”该做的东西,且只做一件事但是要把它做到最好,然后再去做其他的。因此要让一个已有的网站来合作很难,看来只有新建立网站来实现,需要的是人,而真正做工的是神。

学过分布式处理的都知道,我们要使用松散耦合技术,比如我做搜索,谁的社区做得好而且跟我可以同工,我就和谁联合社区,谁的新闻做的好且可以和我同工,我就联合谁联合新闻,谁的博客做得好且可以和我同工,我就和谁联合博客,还有视频、音乐等等。一定要联合可以同工的,且要联合最好的。因为我自己不做这些,或者即使我做,我发现我做的没有人家做得好,我要放弃我自己的而使用其他的。还有一点就是一定要尽量利用现成的公共资源,千万不要凭着一腔热忱,搞个烧钱的视频服务器。我们要做人的同工和信息服务的整合。


说这么多,全是自己的虾想的,不对的地方肯定很多。抛砖引玉,希望各位拍砖。


华传网jesusislove.cn的湖南谢弟兄hunanda...@gmail.com 建议,我们增加开发主内网站建站包。方便各位主内肢体自己建立网站。这类kit基本上每个虚拟主机ISP都提供,但是往往不是主内的。所以我们觉得开发这个挺有意义的。 我现在提供虚拟主机服务,但是给他开了账号他也不会用啊? 华传网论坛再考虑转用php,我建议他用phpBB或者Simple Machines Forum SMF论坛,这两个是全世界最好的开源的php论坛。但是谢弟兄回复我还是想用discuz。 我现在屈服了,外语真的是一个坎啊。中国人因为外语,导致很多世界上最好的东西都无暇享用,而不得不用国内开发的一些工具。不是说中国人做的东西不好,而是集中国人的智慧,哪里有集全世界人的智慧做得好呢? 我以前非常不屑用软件的“汉化版”,我喜欢用原版,因为很多汉化版加了很多不该有的东西,而且看英文版本用的也清爽。现在看来不行了。 我一个wordpress,推荐给很多人用,很多人都说太复杂,不会用。不要说主内肢体,连我室友计算机专业的博士生CS PHD都觉得复杂。joomla!不会用,drupal不会用,就好像这些工具都是开发给fans和技术发烧友用的是的。 其实现在建站工具很多啊,最简单的就是wordpress,以博客为主,还有就是joomla和drupal这些CMS,这些都是开源的。N年以前我用过 ucenter,discuz,好像也用过discuz,这些也都很不错,如果是免费的也可以尝试。 那我们要做的其实也就是增加主内模板和写手册而已,因为汉化人家已经自己做了了,而且功能都异常强大。越用越觉得强大啊。

现在主内网络应用就增加了:主内网站建站工具包。 还有个通用平台的桌面圣经和掌上圣经,我觉得基于java开发可能比较好。而且现在google提供的gwt就是java的。看来也许要开始学习使用 java了,以前一直没有应用的机会。 还有就是主内输入法通用词库。 主内IM工具?这个不知道需求怎么样。其实还是看是否好用。我今天就下载了人人桌面,之前看到有人说51挂挂很多人也在用。这也有两个策略,使用通用工具或者使用专用工具。 主内网络代理?突破GFW封锁,访问国外的主内网站。

主内网络服务,我觉得SNS还是很必要的,网易的Slogan是网聚人的力量,诺基亚是l连接人人Connecting People,而人人网也是连接人人。最近在用开心,人人,和linkedin,前两者提供了共同朋友和朋友的朋友功能,而linkedin更直接,第一级多少人,第二级多少人。其实社交网络就是这样建立起来的,人介绍人认识人。