72 lines
2.0 KiB
Markdown
72 lines
2.0 KiB
Markdown
# 部署
|
||
|
||
和 GitBook 生成的文档一样,我们可以直接把文档网站部署到 GitHub Pages 或者 VPS 上。
|
||
|
||
## GitHub Pages
|
||
|
||
GitHub Pages 支持从三个地方读取文件
|
||
|
||
- `docs/` 目录
|
||
- master 分支
|
||
- gh-pages 分支
|
||
|
||
我们推荐直接将文档放在 `docs/` 目录下,在设置页面开启 **GitHub Pages** 功能并选择 `master branch /docs folder` 选项。
|
||
|
||
![github pages](../_images/deploy-github-pages.png)
|
||
|
||
!> 可以将文档放在根目录下,然后选择 **master 分支** 作为文档目录。
|
||
|
||
## GitLab Pages
|
||
|
||
如果你正在部署你的主分支, 在 `.gitlab-ci.yml` 中包含以下脚本:
|
||
|
||
?> `.public` 的解决方法是这样的,`cp` 不会无限循环的将 `public/` 复制到自身。
|
||
|
||
```YAML
|
||
pages:
|
||
stage: deploy
|
||
script:
|
||
- mkdir .public
|
||
- cp -r * .public
|
||
- mv .public public
|
||
artifacts:
|
||
paths:
|
||
- public
|
||
only:
|
||
- master
|
||
```
|
||
|
||
!> 你可以用 `- cp -r docs/. public` 替换脚本, 如果 `./docs` 是你的 docsify 子文件夹。
|
||
|
||
## VPS
|
||
|
||
和部署所有静态网站一样,只需将服务器的访问根目录设定为 `index.html` 文件。
|
||
|
||
例如 nginx 的配置
|
||
|
||
```nginx
|
||
server {
|
||
listen 80;
|
||
server_name your.domain.com;
|
||
|
||
location / {
|
||
alias /path/to/dir/of/docs;
|
||
index index.html;
|
||
}
|
||
}
|
||
```
|
||
|
||
## Netlify
|
||
|
||
1. 登陆你的[Netlify](https://www.netlify.com/)账号
|
||
2. 在[dashboard](https://app.netlify.com/)页上点击 **New site from Git**.
|
||
3. 选择那个你用来存储文档的git仓库,将 **Build Command** 留空, 将 **Publish directory** 区域填入你的`index.html`所在的目录,例如:填入`docs`(如果你的`index.html`的相对路径是`docs/index.html`的话).
|
||
|
||
### HTML5 router
|
||
|
||
当使用HTML5路由时,你需要设置一条将所有请求重定向到你的`index.html`的重定向规则。当你使用Netlify时这相当简单,在你的**Publish Directory**下创建一个`\redirects`文件,写进以下内容,然后——:tada:就好了:
|
||
|
||
```sh
|
||
/* /index.html 200
|
||
```
|