这是 Bodhi 投身 WordPress 献身华语博客事业以来的些许感悟,涉及到很浅显、很通俗的网络技术、博客应用原理。希望对博客文化爱好者有所帮助。

我不是技术圈内人,也不是“站长一族 ”,只是个博客爱好者。请指正明显的错误,某些变通理解的表达方式仍将保留……

  • 什么是互联网?
  • 互联网就是通过各种设备将众多计算机联系起来组成的信息网络。计算机之间可以相互发送、接收信息。

  • 什么是服务器、主机?
  • 服务器(主机)就是一台计算机,拥有联网能力和相应的性能标准。
    如果我们想假设一个博客并展示页面、多媒体文件,那么我们需要一台他人可访问的计算机来存储这些东西,这台计算机就是主机。
    主机除了用以保存网页和媒体文件之外,还提供程序脚本执行、数据库存储的能力,例如我们日常听闻的“PHP/MySQL 主机”指的是支持 PHP 脚本并使用 MySQL 数据库的主机。

  • 什么是 IP?
  • IP 就是为处于某网络中的计算机分配的地址,用来标识其独立性。

  • 什么是域名?
  • 我们可以认为域名就是某个网站在数字世界中的姓名(当然你会问为什么是域名不是网站名 :-) 自行搜索 domain 含义吧)。

  • 什么是域名解析?
  • 我们可以使用网站所处主机的 IP 配合其他参数来访问该站点,但是数字组成的 IP 地址是不易于人类识记的。
    于是利用某些技术将域名和主机 IP 联系起来,当访问 nicetype.com 的时候自动指向所在服务器的 IP,服务器程序再将该请求转到相应站点所在的文件夹目录(一般一台服务器存放多个站点)——这就是域名解析。

  • 网页浏览是什么原理?
  • 访问博客就是使用浏览器打开包含某 HTML 页面,或者接收 HTML 代码。当然还包括其他的信息发送……例如提交表单、响应用户操作等。

  • 什么是 HTML ?
  • HTML 超文本标记语言,XHTML 可扩展的超文本标记语言。
    超文本的意思就是不仅可以表现普通的平文本(文字),还可以表现图像、视频、音频、Flash 等多媒体信息。
    标记语言指的是使用规定的标签代码来书写展现相应的页面内容或规则。例如我们需要表现 JPG 图像文件,那么需要使用 img 标签来告诉计算机这是一张图片、这张图片所在的位置并固定图像的尺寸。
    虽然标记语言不算编程语言(如 C、JAVA、PHP 等),但可以暂时认为他们在翻译人类语言和计算机语言之间的功能是相近的。

  • 怎样制作 HTML 文件、怎样书写 HTML 语言?
  • 你可以使用任何文本编辑器(例如 Windows 记事本、Notepad++、VIM 等)来书写代码,或者使用可视化的编辑工具(如 KompoZer/Nvu、Dreamweaver 等)来“绘制”页面。
    关于 HTML 的标准和书写规范可以自行搜索 W3C 等相关内容。

  • 什么是数据库?
  • 简单的来讲,数据库就是数据存放仓库。用来存储大量(海量)的、有明晰结构的数据。并且提供用户查找、删除、修改、添加数据的能力。
    例如我们书写博客,每一篇日志都有“标题、正文、标签、作者、链接”等信息,这就是有明细结构的数据内容。如果只有几十篇日志,那么我们可以在 HTML 页面中人工查找相关的信息并手动修改而不感到疲乏,如果有成百上千甚至更多的日志,那么就需要专门的程序来分门别类加以管理——这就是数据库。

  • 什么是 PHP?
  • PHP 是一种编程语言。WordPress 便是用 PHP 编写的网络应用程序。

  • 什么是博客程序、博客后台?
  • 博客程序=在线的 HTML 编辑器+可视化的数据库操作工具
    上文提到如果有大量的“标题、正文、标签、作者、链接”等信息我们可以使用数据库来存储、查找、删除、修改、添加。然而直接操作数据库对于普通用户来说很有难度且不安全,博客程序(例如 WordPress)提供用户一个直观的、安全的界面,用户通过填写、确认相应的表单就可以完成对数据库的操作。

  • 什么是动态页、静态页?
  • 前文提到“访问博客就是使用浏览器打开包含相应内容的 HTML 页面”。

    一般的网站(例如霏凡下载站、新浪等)将每一条信息制作成一个真实的、永久的 html 文件存储于主机上,用户通过访问改文件的 URL (可以理解为链接)就可以在浏览其中观看相应的内容——这就是静态页。

    一般的博客(例如 Nicetype.com 等)只在用户点击某日志链接的时候才调用数据库信息生成临时的 html 代码信息发送给浏览器,浏览器渲染输出给用户——这就是动态页。

总结一下,博客是怎样运行的呢?
举例:用户小梅林访问日志《搜狗皮肤:Simple more》(http://www.nicetype.com/sogou-skin-simple-more/)并留言。
I. 访问日志《搜狗皮肤:Simple more》

  1. 用户小梅林使用浏览器访问 http://www.nicetype.com/sogou-skin-simple-more/ ,
  2. 浏览器将这个请求发送给域名解析服务器(DNS),
  3. DNS 将域名转换为相应服务器的 IP 并通知该服务器这次访问,
  4. 服务器程序将请求转交给 nicetype.com 所用的博客程序 WordPress,
  5. WordPress 向数据库索要 nicetype.com 主页所包含的信息并生成 HTML 代码并发送给小梅林的浏览器,
  6. 浏览器将这些代码选染成可视的页面展现在小梅林面前。

II. 提交留言

  1. 小梅林对某篇日志很感兴趣,填写留言并点击“发表”按钮提交留言。
  2. 浏览器发觉这个行为汇总小梅林所填写的表单信息发送给 nicetype.com 所在服务器,
  3. 服务器程序将请求转交给 nicetype.com 所用的博客程序 WordPress,
  4. WordPress 分析后将留言内容、留言者(姓名、邮件、博客地址)、留言者所用计算机 IP 等信息分门别类插入 MySQL 数据库并保存。

当小梅林再次打开这个日志的时候,执行步骤 I,发现自己的留言已经显示在页面下端了。