Pelican-chineses
  • Pelican Documents in Chinese
  • 关于翻译
  • 简介
  • 快速开始
  • 安装
  • 创作
    • 链接、静态文件和外部网站
    • 翻译、语法高亮和发布草稿
  • 发布网站
  • 设置(暂且不翻译)
  • 创建主题
    • 主题对象
  • LICENSE
Powered by GitBook
On this page
  • 生成网站
  • 查看生成的文件
  • 部署
  • 自动化
  • Invoke
  • Make

发布网站

生成网站

一旦 Pelican 被安装并且填充了一些内容(比如通过 Markdown 或者 reST 格式),你就可以通过 pelican命令把你的网站转换成 HTML。 可以特别的设置网站内容所在的路径以及(可选的)设置文件的位置:

    pelican /path/to/your/content/ [-s path/to/your/settings.py]

上面的命令可以生成你的站点,使用默认的主题,然后把它保存到 output/ 文件夹中。默认的主题包括了一些非常简单的 HTML 而没有样式。这个简单的主题可以用来构建自己的主题。

当写好一个文章或者页面的时候,只生成相关的内容是可能的,使用 --write-selected 参数,就像下面那样:

     pelican --write-selected output/posts/my-post-title.html

注意到你必须指明 输出 文件的位置,而不是源内容的位置。为了决定输出文件的名字和位置,使用 --debug 选项。如果想要的话,--write-selected 可以接受一个逗号分割的路径列表,或者是配置成为默认设置。(参见 writing_only_selected_content)

你还可以告诉 Pelican 来监视你的修改,而非每次手动都需要重新运行命令来查看修改。为了打开这个功能,你需要在运行 pelican 命令的时候使用 -r 或者 --autoreload 选项。

Pelican 有一些其他的命令行选项,使用下面的命令来获得帮助:

   pelican --help

查看生成的文件

Pelican 生成的文件都是静态文件,所以你并不需要任何特殊的方法来预览。你可以直接使用你的浏览器打开生成的网站:

     firefox output/index.html

因为上面的方法可能会在加载你的 CSS 文件和其他静态文件的时候产生错误,你可以使用 Python 提供的一个轻量级服务器来提高预览的体验。

对于 Python 2,运行一下命令:

    cd output
    python -m SimpleHttpServer

对于 Python 3,则运行一下命令:

     cd output
     python -m http.server

一旦这个基本的服务器被启动你,你就可以通过 http://localhost:8000/ 来预览网站。

部署

当你已经生成你你的网站,并在本地开发环境下预览了你的网站之后,就已经做好了把它部署在生产环境的准备了。你可能首先需要使用生产环境特殊的设置来重新生成网站:

    pelican content -s publishconf.py

为了在你的 pelicanconf.py 之上覆盖你的发布配置,你可以通过下面的语句来导入你的 pelicanconf

    from pelicanconf import *

如果你已经使用 pelican-quickstart 生成了一个 publishconf.py 。那么上面那个语句就已经被包含了。

如何在生产环境下部署你的网站取决于生产环境。如果你有对一台运行着 Nginx 或者 Apache 的服务器的 SSH 权限。你可以使用 rsync 工具来发送你的网站文件。

    rsync -avc --delete output/ host.example.com:/var/www/your-site/

这有很多的部署选项,有一些已经被通过生成网站时 pelican-quickstart 配置了。查看 Tip 页面来了解如何通过 Github Page 部署。

自动化

虽然 pelican 命令是生成网站最正统的方式,一些自动化工具也可以用来构建自动生成和构建网站的工作流。

在使用 pelican-quickstart 命令时,有一个问题就是是否需要自动地生成和部署网站。如果您的回答是 "yes" ,那么一个 tasks.py 和 Makefile 文件将会自动的在项目根目录下创建。这些文件已经预先填充了从其他问题获得的选项。 这些文件代表着一个起点,你需要定制化他们来满足你的独特的需求和使用习惯。如果你发现一个或者多个自动化工具的作用非常有限,你可以随时删掉他们,这不影响 pelican 命令。

下面是一些包装了 pelican 命令的自动化工具。可以在生成、预览、上传网站的时候简化流程。

Invoke

    pip install invoke

稍等片刻,打开项目根目录下的 tasks.py 文件,你就会发现一系列命令。这些命令都可以被按照您的喜好重命名、移除、添加或者自定义。使用默认的配置,你可以通过这个命令来生成网站:

    invoke build

如果你更倾向于使得 Pelican 可以在检测到更改之后自动地重新构建你的网站(在本地测试时非常有用),使用下面的命令来替换:

    invoke regenerate

如果需要本地部署网页来方便在浏览器中的 http://localhost:8000/ 预览:

    invoke serve

如果在 pelican-quickstart 过程中,对时候通过 SSH 上传网站的问题回答为 "yes" 。你可以使用下面的命令来调用 rsync 命令:

    invode publish

这只是一些默认支持的简短的命令,你可以自由的探索 tasks.py 文件来看看还有那些其他的命令。更加重要的是,千万不要犹豫定制 tasks.py 来满足你独特的需求和偏好。

Make

一个 Makefile 也会在你对相关问题回答为 "yes" 时,自动的创建。 这种方式的好处就是 make 命令被内置于绝大多数 POSIX 系统,因此无需额外的安装而可以直接使用。缺点就是对于 非 POSIX 系统(比如 Windows)来说,并不包括 make ,并且安装它是非常繁琐的工作。

如果你想使用 make 来生成网站,并且使用 pelicanconf.py 中的设置,请运行:

    make html

如果你想要使用 publishconf.py 来生成生产环境下的网站,运行:

    make publish

如果你愿意让 Pelican 自动的重建(本地测试时有用),请使用如下命令:

    make regenerate

如果想要启动服务器来运行生成的网站,以用来在 http://localhost:8000/ 地址预览:

    make serve

正常情况下,你可能需要分别运行 make regenerate 和 make serve 两个命令。但是你可以通过运行下面的命令来一次性完成:

    make devserver

上述命令将会同时运行 Pelican 重构模式和启动服务器并输出到 http://localhost:8000/ 。

当你完成你的网站,想要通过在 pelican-quickstart 问卷中填写的方法来上传网站时。举个例子,我们使用 rsync 来通过 ssh 上传:

    make rsync_upload

就是这样,你的网站就在线了。

(默认的 Makefile 和 devserver.sh 脚本会使用 python 和 pelican 可执行文件来完成它的工作。如果你需要使用不同的可执行文件,比如 python3 ,你可以设置 PY 和 PELICAN 环境变量。以此来覆盖默认的可执行文件名)

Previous翻译、语法高亮和发布草稿Next设置(暂且不翻译)

Last updated 6 years ago

使用 的优点就是这个模块是用 Python 写的,因此可以被用于非常广泛的环境之中。缺点就是它必须被单独的安装,使用下面的命令可以安装 Invoke ,如果你的环境要求,请使用 "sudo" 前缀:

Invoke