如何安装和开始使用Sculpin
状态: 已弃用
本文介绍了不再受支持的 Ubuntu 版本。 如果您当前正在运行运行 Ubuntu 12.04 的服务器,我们强烈建议您升级或迁移到受支持的 Ubuntu 版本:
原因: Ubuntu 12.04 已于 2017 年 4 月 28 日终止生命周期 (EOL) and no longer receives security patches or updates. This guide is no longer maintained.
请参阅: 本指南可能仍可用作参考,但可能不适用于其他 Ubuntu 版本。 如果可用,我们强烈建议使用为您正在使用的 Ubuntu 版本编写的指南。 您可以使用页面顶部的搜索功能来查找更新的版本。
介绍
Sculpin 是一个基于 PHP 的静态站点生成器。 它将 Twig 或 HTML 模板与用 markdown 编写的内容一起转换为易于部署的静态站点。
在本教程中,我们将在运行 Ubuntu 12.04 的 VPS 上安装 Sculpin 并开始使用它。 我们将了解如何从头开始一个项目,如何生成静态文件,以及如何使用其内部 Web 服务器将文件传送到浏览器。 此外,我将向您展示如何开始使用在 Sculpin 中构建的预制博客网站并向其中添加新的博客文章。
安装
我们需要做的第一件事是处理我们稍后需要的一些要求。 所以运行以下命令来安装它们。 如果您已经拥有其中任何一个,则可以将它们从命令中删除。
apt-get update apt-get install php5-common php5-cli git-core php5-curl
然后我们下载 Sculpin PHP 可执行文件(.phar 文件):
curl -O https://download.sculpin.io/sculpin.phar
接下来,我们需要使其可执行:
chmod +x sculpin.phar
现在为了从我们的虚拟服务器上的任何文件夹运行 Sculpin,让我们将它移动到 /bin 文件夹中:
mv sculpin.phar ~/bin/sculpin
如果您的用户根文件夹中还没有 /bin 文件夹,请先创建它。 最后,让我们将它添加到 bash 中。 打开 .bashrc 文件:
nano ~/.bashrc
并粘贴到以下行:
PATH=$PATH:$HOME/bin
然后运行以下命令来获取 .bashrc
文件并确保您的更改保持不变:
source ~/.bashrc
那应该这样做。 要测试命令是否有效,只需从任何文件夹 (sculpin
) 运行 sculpin 命令,您应该在命令终端中获得 Sculpin 帮助。
您的第一个 Sculpin 网站
Sculpin 的一件事是它带有一个内置的网络服务器,能够将其页面提供给网络。 要查看实际情况,让我们在用户的根文件夹而不是 Apache 根目录中创建我们的简单站点。 让我们从我们的第一个项目文件夹开始:
mkdir mysite cd mysite mkdir source cd source
现在我们有了项目文件夹(mysite/)和里面的另一个文件夹(source/)。 后者是您放置网站内容的地方。 所以让我们在那里创建一个简单的 Hello World 东西。 在 /source 文件夹中创建一个 index.md 文件并粘贴以下内容:
--- --- # Hello World
我们编写 Hello World 的格式称为 markdown,上面的行用于 YAML 格式。 有关降价语法的更多信息,请查看 本页 。 保存文件,退出,回到 mysite/ 文件夹并运行以下命令:
sculpin generate --watch --server
这将生成您的开发站点。 如果您对文件进行一些更新并创建一个文件夹以通过服务器端口提供文件,请注意内容的当前更改。 所以现在您可以通过 ip-address:8000 访问您的站点。 您应该看到 Hello World 打印在页眉标签之间的页面上。 要停止服务器(如终端中所述),只需运行 CTRL + C。
您会注意到在 mysite/ 文件夹中,您现在有另一个名为 output_dev/ 的文件夹,其中存储了等效的 html 文件。 要生成生产文件,请将 --env=prod
标签添加到 sculpin generate 命令:
sculpin generate --watch --server --env=prod
这将在其中生成 output_prod/ 文件夹和必要的文件。 然后,您可以将此文件夹与您的 Apache 同步,以便您可以使用适当的服务器将站点页面传送到浏览器。 让我们快速看看如何做到这一点。
假设您希望可以从 Apache 的默认 /var/www/ 文件夹(Web 服务器根目录)访问该站点,您可以执行以下操作。 导航到 output_prod/ 文件夹:
cd output_prod
并运行以下 rsync
命令将此处的文件与 /var/www 文件夹同步:
rsync -azv * /var/www
现在您可以直接从您的 VPS IP 地址访问该站点(如果您没有更改任何虚拟主机配置)。 每当您对站点进行任何更改并生成新的 html 文件时,只需从同一文件夹运行此命令即可。
树枝和布局
Sculpin 使用 Twig 进行布局,这是一个强大的 PHP 模板系统。 DigitalOcean 上有一篇关于 Twig 的介绍性文章。 正如我们所看到的,页面上打印的内容位于 source/ 文件夹中 - 这是您用 markdown 编写的内容。 现在让我们创建一个布局,将向其中注入 index.md 文件内容。
在 source/ 文件夹中,创建一个名为 _views 的文件夹(命名是一种最佳实践):
mkdir _views
在此文件夹中,创建一个名为 main.html 的文件。 在这里,我们可以声明我们想要的所有主页 HTML + 将呈现我们网站内容的 Twig 内容块。 例如,粘贴以下内容:
<html> <head><title>My first Sculpin site</title></head> <body><div class="content">{% block content %}{% endblock %}</div></body> </html>
现在编辑我们之前创建的 index.md 文件,而不是这个:
--- --- # Hello World
粘贴这个:
--- layout: main --- # Hello World
现在,如果您再次运行 sculpin 命令(您现在可以忽略手表):
sculpin generate --server
您应该看到您编写的降价文件 (index.md) 自动注入到我们在 main.html 模板中定义的 Twig 内容块中,因为我们在文件顶部进行了 YAML 声明. 整洁的。
测试博客
如果您想了解更多关于 Sculpin 可以做什么的信息,您应该获取 Sculpin 博客框架,它可以帮助您更好地了解它的工作原理。 您可以为此使用 git:
cd ~ git clone https://github.com/sculpin/sculpin-blog-skeleton.git blog cd blog
现在我们需要让 Sculpin 使用 Composer 安装项目依赖项。 所以只需运行以下命令:
sculpin install
接下来,您可以使用服务器选项运行 sculpin generate
功能,然后返回浏览器查看您刚刚创建的博客站点。 然后,您可以浏览构成博客的文件并了解它们如何协同工作。 此外,您可以向博客添加新帖子。 转到 _posts/ 文件夹:
cd source/_posts
并创建一个新文件:
nano 2020-02-07-my-post.md
将以下内容粘贴到里面并保存:
--- title: My post --- # Hello world.
然后继续并再次生成并查看博客。 你会在那里看到你的新帖子。
结论
Sculpin 是一个有趣的静态站点生成器,它使用 markdown 进行快速内容格式化,使用 Twig 进行出色的模板化,让您轻松部署静态站点。 我们已经看到了一个项目的样子和如何开始,以及一个已经用 Sculpin 构建的博客网站的样子。