在网络生活越来越丰富多彩的今天,已经有很多人在博客网站上开设了自己的博客,可是体验却并不算是很好。这些博客网站上对编辑文章限制很多,更别提一些视觉特效了。甚至有的博客网站,比如微软的 Live Space,说不干就不干了,用户只好带着自己的内容另觅小家。如果能自己控制这些多好?于是有越来越多的人选择自己建个网站,想怎么写就怎么写,想怎么展示就怎么展示,完全由你做主。那么……怎么建立自己的个人网站?
实际上建一个网站远没有想象中那么复杂,尤其是现在还有很多个人和企业提供建站服务。如果你有点儿探索精神和学习兴趣,完全可以自己动手来一步步建设自己的网站。下面就来简单介绍一下建网站的一些主要步骤,并根据我的经验提供一些参考意见。
本文针对的是个人网站,也就是比较小型的、结构不是那么复杂的网站。虽然建设一个大型网站的步骤也是一样,但是具体问题的处理上会考虑更多的因素因而更复杂,比如服务器性能好些、因网站结构复杂而需要更多的设计工作等。
1. FAQ¶
还是先回答几个大家可能迫切想知道的问题吧,让你能够决定是不是要自己动手建设一个网站。
a. 建个人网站需要花很多钱吗?¶
如果你完全 DIY(自己动手)的话,应该是每年不超过 200 元人民币。我这个网站,最开始的一年只花了 50 多块钱。
如果你需要让别人帮你做很多工作的话,比如找人代建网站,这个花费应该不少,但是具体多少我也说不上来。而且还要注意别被骗,骗子虽然很招人嫌,却总是很多,尤其诚信缺失的现在。
B、我需要具备什么样的知识水平来建站?¶
嗯,这个问题其实挺不好回答的。当然你知道的越多,做起来就越容易,但是就算你什么都不知道,只要你肯花时间和精力,也一样能够做出来,甚至可以做得很好。
起码的要求是,你需要能够看得懂汉语,能看懂英语更好。之所以要求能看懂汉语,是因为这个过程中你可能会碰到很多新的名词或者说法,需要你在什么都不知道的情况下尽量准确的猜测它们的含义。(:) 因为我见到不少学生在写作业或考卷的时候连题目的意思都会理解错,所以加上这么一句,大家不要见怪啊。)
看懂一些简单的英文单词,能够区分它们就可以了,毕竟计算机程序基本都是用英文字母和数字等符号标记的。
然后就是你需要会使用 Google 来搜索自己想要知道却还不知道的东西,当然,百度也凑合能用。毕竟很多东西你可能不知道,那么搜索是最快捷和简单的获取答案的方法。很多你现在遇到的问题,别人可能早就遇到过,并且将解决方法发布在网上了。而且还有人(比如我)闲来无事专门写些教程和技巧之类的文章,这类文章一般都很详细。而且一般来讲,文章作者(你得分清哪些是真的作者,哪些是专门复制+粘贴文章的人)也愿意提供进一步的帮助,你完全可以自学成才。
C、还没想到,你来提问吧。¶
2. 构建网站的三大件¶
为了更好的理解后面的内容,有必要先介绍一下构成一个网站所必需的三个主要部分:服务器、域名、网站程序(内容)。顺便介绍一些相关名词。
a. 服务器¶
服务器就是计算机,就是你的网站的物理载体。就好比我们的程序需要运行在自己的电脑上一样,网站程序需要运行在服务器上。与我们平常用的电脑相比,服务器针对稳定性和长时间运行作了优化。我们先不用去管服务器的具体实现,有初步的了解,会用就行了。
这里所说的服务器,实际上是指服务器上的一部分用于提供网络服务的资源,我们通常称之为空间,或主机等。大的服务器可以是一个计算机集群,小的也可以只有一台计算机(所谓的独立主机),再小些,还可以是一台计算机里面的一个虚拟主机(比如 VPS),或者与别人共享。
共享主机
小型的网站,比如个人博客,需要不了太多资源,往往都是很多人共同使用一个服务器来放置自己的网站,所以就有人专门提供这类服务器。这个放置网站的空间就叫做共享空间。可以这么理解,服务器相当于一栋楼房(可以是单个 IP,也可以是多个 IP),而一个共享空间就相当于这栋楼房里的一个房间。购买共享空间就相当于给自己的网站租住其中一间房子来放置网站程序。
共享空间也是有大小之分的,对应的价格也不一样。对于初级用户,甚至免费的就够用了,GoDaddy 就在注册域名之后提供一个免费的共享空间,但是会有广告加载到你的网站页面上。参考:免费的共享空间。
然后就是付费的,目前来看基本就是 100 ~ 300 元人民币/年。我目前(买了VPS了)之前用的主机就挺不错的,在国外但是速度还可以,也挺便宜。当然也有些大公司提供这类服务,比如著名的 Go Daddy 的共享主机空间。
VPS
比共享空间稍高级一点儿的就是 VPS 了。 VPS 就是虚拟私人服务器,从名字上就能看出来,它是一个虚拟的计算机,运行在服务器之中,但是对于用户而言它跟一个独立的主机的区别就在于 CPU、内存、硬盘等都小些。再然后就是独立主机,可是没必要再介绍了,个人网站用不上,等你能用上 VPS 都已经不需要看这篇文章了。
水景一页于 2012 年初购买了 Linode 的 512MB VPS,随后自己安装配置 CentOS Linux 发行版(minimal),然后又安装和配置了网站服务器 LAMP(Linux + Apache + MySQL + phpMyAdmin),还捣鼓了一套简单的安全策略。
国内也有很好的 VPS 服务器,比如阿里巴巴旗下的阿里云。虽然比国外的价钱高点儿,但是因为在国内,有天然的地理优势,访问速度非常快。
关于 VPS 的入门级使用方法,详情可参考我的 VPS 学习之路。玩 VPS 或者独立主机的话都可以参考一下。
为了运行你的网站程序,服务器上需要有操作系统(Linux、Windows 等),可能还需要其它的辅助程序如网页标记语言解释程序(Apache 等)、数据库等。
b. 域名¶
域名就是一个网站的地址标记。
在了解域名的概念前,我们需要先了解 IP 的概念。在互联网中,每一台计算机都会有一个唯一的标识,这个唯一的标识就是 IP 地址,用以区别接入互联网的成千上万台计算机。每个 IP 地址由 4 个小于 256 的数字组成,数字之间用点间隔,例如 123.123.123.123 就表示一个 IP 地址(这是 IPv4 协议的规定,后来 IP 地址不够用了,就开始了 IPv6 协议,只是目前国内还没有大面积使用)。
不难看出,IP 地址使用起来难以记忆,非常不方便,我们需要有一套和 IP 地址对应的字符型地址,因此就产生了域名。所以,与网络上的数字型 IP 地址相对应的字符型地址,就被称为域名。我的域名就是 cnzhx.net 。这是一级域名,还可以有二级域名,如 test.cnzhx.net 。注册了一级域名,就有了相应的二级域名的控制权。
还是拿前面楼房以及房间作比喻,IP 就是这栋楼房的地理位置(经纬度),而域名就相当于这栋楼房的门牌地址比如某某市某某路某某号某某大厦,房间号可以由楼房的管理员在内部分配。一个服务器可以有一个或多个 IP 地址(这栋楼很大,可以用不同的经纬度表示其南楼、北楼等)。将你的域名绑定(设定固定的联系,让别人知道某域名对应的 IP 地址是什么,可更改)到这个 IP,然后服务器再将你的域名跟你的共享空间(房间号)对应起来。当别人在浏览器中输入你的域名地址后就能够通过域名解析(一些特殊的服务器,DNS,将域名和 IP 对应关系存储起来以供查询之用,由域名经查询得到对应的 IP 地址的过程就是域名解析)知道你的服务器的 IP。访问请求发送到服务器之后,服务器再告诉浏览器对应的共享空间(房间号),别人就能够通过域名访问到你的网站了。
鉴于域名的工作原理,互联网上的域名都是唯一的(不然就会找错地方了),所以要注册一个理想的域名已经不容易了,很多你想要的都已经被别人注册过了。要注册的话就赶紧了,按年收费,不算太贵,一般 50~100 人民币/年。建议去口碑较好的大公司注册,比如 Go Daddy(这里有优惠介绍),特别不推荐在国内注册(自己 Google 原因)。
网上也有提供免费域名的,但是不推荐。这就好像把自己的住址让别人来决定一样,别人随时都可能让你从地球上消失。可以看看我的免费域名经历,用了一段时间我也申请自己的域名了(如果早知道不好就不用免费的了)。
c. 网站程序或内容¶
这就是你打算放在网上与大家分享的东西了。可以是文字、图片、视频(很明显一个比一个要占更大的地方,得考虑自己的房间大小(服务器存储空间)和门框(流量)大小了)等等。
要将内容展示给访问者,你需要提供一个页面(比如你现在看到的这个页面,上面有文字、图片等)。这种页面可以是静态的(通常是 .html 之类的文件,提前编辑好,类似一个 Word 文档),也可以是动态的(将文字和文件存储在数据库和/或硬盘上,接收到访问请求的时候再由程序产生一个 html 文件发送给访问者)。
动态生成网页的程序(网站程序)可以用 PHP、ASP、Java 等编程语言来编写。ASP 是微软开发的一个程序,而 PHP 是开源的。基于 PHP 的网站程序有 WordPress(我现在用的,主要针对个人博客等小型网站,也有不少大型网站使用这个,因为它简单、易用、扩展性好)、Joomla(主要针对复杂的大型网站)等,还有一些专门的论坛程序。可参考:
- 国内 PHP 开源建站程序一览(2009-7-6)
- 26 款国外开源 PHP 建站程序(2009-7-7)
- 国内ASP开源建站系统一览(2009-7-7)
鉴于 WordPress 的流行度和荣誉,个人强烈推荐。它是免费的,基于 PHP 语言和 MySql 数据库,所以需要 Linux 类型的服务器。
3. 建站:将“三大件”联系起来¶
一旦确定了前面的三大件,我们要做的就是布置好它们,也就完成了网站的搭建过程,剩下的就是通过网站程序的管理后台添加文章了。不过将它们联系起来也是个比较复杂的过程,下面简单介绍步骤,详细的情况恐怕一时说不清楚。还是那句老话,Google 一下看看。
- 在域名注册商提供的域名管理控制台那里设置域名的解析地址(共享空间的 IP 地址)(域名 A 记录),等待其生效(新域名基本上立即生效);
- 在服务器上安装网站程序(如果你选择了 WordPress(中文版下载地址),可以参考其 5 步快速安装法,详情请查看 WordPress 中文文档);
- 完成!在浏览器地址栏输入你的域名(网址)去看看你的网站吧(新生儿,好像没什么内容 :)),还可以进入网站后台看看你都可以设置什么。
学习的最好方法就是自己动手操作一下。如果这些东西对你来说太新鲜了,可以先从那些免费资源开始,免费的域名、免费的共享主机,你需要付出的只有时间了。当然也可以自己在电脑里面创建一个小型的服务器(虚拟主机)来练手(参考:我的 VPS 学习之路),这就比较高端了,熟悉之后就可以玩 VPS 了,但是太复杂,不建议对计算机知识了解不多的朋友尝试。
4. 优化网站访问速度¶
今天又有网友咨询网站访问速度的问题。为什么同样的甚至更好的服务器,同样的机房,我的网页加载较快呢?
帮他看了一下,大概大家的情况都差不多:页面加载的东西(包括各种 js 和 css 文件,还有图片)太多了。
再加上没有注意各种页面主要资源和非主要资源的加载顺序和方式,导致一些不太重要的元素的下载等待时间拖延了网页主要内容的呈现速度。
一个比较基础也是比较有效的建议是,
- 根据 Google 网页速度在线测试工具和/或另一个网站加载速度测试工具的测试结果和提示进行优化。
- 另外请看看我的网站优化相关文章:
完成上面这些优化应该网站的响应速度就已经挺不错了。如果能够再根据主要性割舍一些不太重要的后台加载的资源,相信会更好。
5. 个性化你的网站¶
既然是个性化,恐怕我能介绍的就是一些大的方面了,可以了解一下你都能干些什么。
- 如果你对网站的外观和布局不满意,你可以选用其它的模板(WordPress 中称为主题,网上有好多好多免费主题,有些还真是看着不错);
- 如果没有让你满意的模板/主题,你还可以选择一个差不多的模板/主题,然后动手修改它——需要基本的 HTML/PHP/ASP 等编程语言知识(如果是 WordPress 的话,可以从它自带的主题入手,TwentyEleven(2011) 和 TwentyTwelve(2012) 都是非常不错的多平台自适应设计的主题);
- 当然,你也完全可以按照该程序的规范编写自己的主题,不过,修改某个现有模板/主题还是最简单快捷的途径;
- 优化你的网站(可以参考我的网站优化文章,虽然不多,但是个好的起点;当然 Google 的网站站长指南非常有用和全面);
- 将你的网站提交到搜索引擎(不是必须,搜索引擎一般会找到你的网站,只是慢些)
- 通过 http://www.google.com/addurl.html 将其提交给 Google,
- 通过 Google 网站管理员工具提交站点地图,Google 使用您的站点地图来了解您网站的结构,并提高对您的网页的抓取率(WordPress 的话推荐超级好用的站点地图插件 Google XML Sitemaps);
- 给你的网站添加统计代码(Google Analytics、百度统计等);
- 还可以通过你网站赚钱,说不定可以补贴你的建站花销呢(千万不要成为一个滥广告的网站啊,已经看到太多了,累!);
- 应该还有不少吧,一时半会儿想不起来了,以后慢慢补充吧,目前可以参考水景一页上的 WordPress 标签,有很多我最近几年折腾 WP 的总结,应该会有不少收获吧)。
6. 后记¶
因为距离我创建这个网站已经有快 2 年的时间了,某些地方可能还是介绍的不够详细和具体,欢迎大家留言提问,以帮助我进一步完善该介绍。©
本文发表于水景一页。永久链接:<https://cnzhx.net/blog/build-website-yourself/>。转载请保留此信息及相应链接。
嘻,不错不错。
最开始以为建站是个很需要技术的活,后来发现好傻瓜……感谢那些写程序的技术宅们。
详细啊!对我大大的帮助!
欢迎提建议,使之进一步完善 :)
引用通告: 在 Windows 中安装虚拟机软件 VirtualBox | 水景一页
想问下你的文章不展示全文展示简要的效果是插件还是修改代码?
这个是 WP 本来就有的功能,在首页、分类或标签页面展示的是每篇文章开头的一部分。
在编辑文章的时候,到某个位置的时候,从编辑器工具栏中找到“插入“更多”标签(快捷键 Alt + Shift + T”(鼠标悬停时显示)(可视化状态),或者文本编辑状态时的“more”标记即可。