使用 Jigsaw 扩展包基于 Laravel Blade 模板构建静态站点 —— 站点部署篇

1、美化URL

默认情况下,所有非index.blade.php文件都会被生成为对应子目录下的index.html,例如如果你在source目录下有一个about-us.blade.php

└─ source
  ├─ _layouts
    ├─ about-us.blade.php
    └─ index.blade.php

最终将会生成build_local/about-us/index.html

└─ build_local
  ├─ about-us
  │  └─ index.html
  └─ index.html

这意味着,关于我们页面的URL是http://example.com/about-us/,而不是http://example.com/about-us.html

注:你可以在构建站点时通过--pretty=false选项来关闭这一默认设置。

2、站点部署

由于Jigsaw只是静态HTML和JavaScript,部署起来非常简单,也非常廉价。

使用Github Pages

Github Pages免费为Github提供的静态站点提供托管主机,开始之前,先查看其文档理解其工作原理。

我们部署Jigsaw站点到Github Pages的方式是这样的:

1)为生成环境构建站点:

gulp && jigsaw build production

2)提交build_production目录到仓库:

git add build_production && git commit -m "Build for deploy"

3)使用git subtree push只推送build_production目录到gh-pages分支:

git subtree push --prefix build_production origin gh-pages

手动部署

如果你已经有了一个服务器(如阿里云ECS)可以为Jigsaw站点提供托管主机,所有需要做的只是在web根目录下获取build_production的内容,并且在web服务器(如nginx)中将站点URL指向这里。

本系列教程:

学院君

学院君 has written 548 articles

资深PHP工程师,Laravel学院院长