www.debian.org 是如何被制作出来的

外观

Debian 网站是位于 www-master.debian.org 上的 /org/www.debian.org/www 目录的文件和目录的集合。页面的大部分内容都是静态 HTML 文件。它们不包含 CGI 或 PHP 脚本之类的动态元素,因为网站需要能被镜像。

Debian 网站使用网站元语言(Website Meta Language,WML)生成 HTML 页面,包括页眉和页脚、标题、目录等等。尽管 .wml 文件乍看起来像是一个 HTML 文件,但是 HTML 只是 .wml 中可以使用的其中一种额外信息。您也可以在页面中加入 Perl 代码,然后就可以做几乎任何事情。

在 WML 在一个文件上运行其各种筛选器后,得到的最终产品就是真正的 HTML 文件。请注意,虽然 WML 能检查(有时能自动纠正)您的 HTML 代码的最基础的正确性,您还是应该安装 weblint 和/或 tidy 之类的工具作为最基本的语法和编码风格检查工具。

源代码

我们使用 Git 存储 Debian 网站的源代码。这一版本控制系统让我们可以跟踪所有的更改,我们可以看到谁更改了什么、什么时候更改的,以及为什么更改。Git 提供了一个在多个作者并行编辑源文件时加以控制的安全的方法,由于 Debian 网站团队规模很大,所以这一点对我们来说至关重要。

以下是关于源代码如何组织的一些背景信息:

请注意:为了使对模板的更改传播到使用它们的文件,所以其它文件在 Makefile 中依赖它们。绝大多数文件都使用 template 模板,所以它们的开头都有如下一行:

#use wml::debian::template

当然,这条规则也有例外。

脚本

用到的脚本主要用 shell 或 Perl 语言编写。其中一些能独立工作,还有一些已集成到 WML 源文件中。

生成网站

WML、模板和 shell 或 Perl 脚本是您生成 Debian 网站需要的全部原料:

每天运行六次自动更新(从 Git 存储库和其他来源到 webtree)。此外,我们还定期对整个网站运行以下检查:

网站最新的构建日志可以在 https://www-master.debian.org/build-logs/ 找到。

如果您想参与网站开发,开始时请不要简单地编辑 www/目录中的文件或添加新项目。请首先与 webmaster 团队联系。

怎样帮忙

我们鼓励任何人帮助改善 Debian 网站。如果您认为我们的页面上缺少一些关于 Debian 的有价值的信息,请联系我们,我们一定会加入该信息。此外,也请查看上面提到的构建日志,看看您是否有修复其中问题的建议。

我们也需要可以帮助设计网页(图像和布局等)的人。如果您熟悉英语,我们希望您能对我们的页面进行校对并向我们报告其中的错误。如果您使用其他语言,您可能想帮助我们翻译现有的页面,或者修复已翻译的页面的问题。不论何种情况,都请查看翻译协调员列表,然后联系负责人。请参阅翻译页面以获取更多信息。

怎样帮不上忙……(FAQ)

[问] 我想给 Debian 网站添加一个华丽的功能,可以吗?

[答] 不行。我们希望 www.debian.org 尽可能易于访问,因此

[问] 我想提出一个好主意。 您可以在 www.debian.org 的 HTTP 服务器中启用 foo 或者 bar 吗?

[答] 不行。我们希望管理员可以轻松地镜像 www.debian.org,所以请不要使用特殊的 HTTPD 功能。不,即使是 SSI(Server Side Includes)也不行。内容协商已作为例外进行处理,因为它是提供多种语言服务的唯一的一种可靠方法。