Hexo 提供快速便捷的部署策略。您只需一个命令即可将您的网站部署到服务器。
$ hexo deploy |
安装必要的插件,这些插件与您的服务器/代码库提供的部署方法兼容。
部署通常通过_config.yml 进行配置。有效的配置必须包含type
字段。例如
deploy: |
您可以使用多个部署器。Hexo 将按顺序执行每个部署器。
deploy: |
有关更多部署插件,请参阅插件 列表。
Git
$ npm install hexo-deployer-git --save |
- 编辑_config.yml(下面显示的示例值作为注释)
deploy: |
选项 | 描述 | 默认值 |
---|---|---|
repo |
目标代码库的 URL | |
branch |
分支名称。 | gh-pages (GitHub)coding-pages (Coding.net)master (其他) |
message |
自定义提交消息。 | 网站更新: {{ now('YYYY-MM-DD HH:mm:ss') }} |
token |
可选的令牌值,用于对代码库进行身份验证。以$ 为前缀,从环境变量中读取令牌 |
- 部署您的网站
hexo clean && hexo deploy
。
- 除非您使用令牌或 SSH 密钥进行身份验证,否则系统会提示您输入目标代码库的用户名和密码。
- hexo-deployer-git 不会存储您的用户名和密码。使用 git-credential-cache 临时存储它们。
- 导航到您的代码库设置并更改“Pages”分支为
gh-pages
(或您在配置中指定的分支)。部署的网站应在“Pages”设置中显示的链接上生效。
Heroku
$ npm install hexo-deployer-heroku --save |
编辑设置。
deploy: |
选项 | 描述 |
---|---|
repo , repository |
Heroku 代码库 URL |
message |
自定义提交消息(默认值为 Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
Netlify
Netlify 提供持续部署(Git 触发构建)、智能全球 CDN、完整 DNS(包括自定义域名)、自动 HTTPS、资产加速等更多功能。它是一个统一的平台,可以自动执行您的代码,以创建高性能、易于维护的网站和 Web 应用。
有两种不同的方法可以在 Netlify 上部署您的网站。最常见的方法是使用 Web UI。转到 创建新网站页面,从 GitHub、GitLab 或 Bitbucket 中选择您的项目代码库,并按照提示操作。
或者,您可以使用 Netlify 的 基于 Node 的 CLI 工具来管理和部署 Netlify 上的网站,而无需离开您的终端。
您还可以在您的 README 文件中添加一个 部署到 Netlify 按钮,允许其他人创建您的代码库的副本并通过单击部署到 Netlify。
Rsync
$ npm install hexo-deployer-rsync --save |
编辑设置。
deploy: |
选项 | 描述 | 默认值 |
---|---|---|
host |
远程主机的地址 | |
user |
用户名 | |
root |
远程主机的根目录 | |
port |
端口 | 22 |
delete |
删除远程主机上的旧文件 | true |
verbose |
显示详细消息 | true |
ignore_errors |
忽略错误 | false |
OpenShift
hexo-deployer-openshift
已于 2022 年弃用。
$ npm install hexo-deployer-openshift --save |
编辑设置。
deploy: |
选项 | 描述 |
---|---|
repo |
OpenShift 代码库 URL |
message |
自定义提交消息(默认值为 Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
FTPSync
$ npm install hexo-deployer-ftpsync --save |
编辑设置。
deploy: |
选项 | 描述 | 默认值 |
---|---|---|
host |
远程主机的地址 | |
user |
用户名 | |
pass |
密码 | |
remote |
远程主机的根目录 | / |
port |
端口 | 21 |
clear |
在上传之前删除远程目录中的所有文件和目录 | false |
verbose |
显示详细消息 | false |
SFTP
安装 hexo-deployer-sftp。通过 SFTP 部署网站,允许使用 ssh-agent 进行无密码连接。
$ npm install hexo-deployer-sftp --save |
编辑设置。
deploy: |
选项 | 描述 | 默认值 |
---|---|---|
host |
远程主机的地址 | |
port |
端口 | 22 |
user |
用户名 | |
pass |
密码 | |
privateKey |
SSH 私钥的路径 | |
passphrase |
私钥的可选密码 | |
agent |
ssh-agent 套接字的路径 | $SSH_AUTH_SOCK |
remotePath |
远程主机的根目录 | / |
forceUpload |
覆盖现有文件 | false |
concurrency |
并发处理 SFTP 任务的最大数量 | 100 |
Vercel
Vercel 是一个云平台,使开发人员能够托管 Jamstack 网站和 Web 服务,这些网站和 Web 服务可以立即部署、自动扩展,并且无需监督,所有这些都无需配置。它们提供全球边缘网络、SSL 加密、资产压缩、缓存失效等更多功能。
步骤 1:将构建脚本添加到您的 package.json
文件中
{ |
步骤 2:将您的 Hexo 网站部署到 Vercel
要使用 Vercel for Git 集成 部署您的 Hexo 应用,请确保它已推送到 Git 代码库。
使用 导入流程 将项目导入 Vercel。在导入过程中,您会发现所有相关的选项都已预先配置好;但是,您可以选择更改任何这些选项,可以在 这里 找到它们的列表。
导入项目后,对分支的后续所有推送都会生成 预览部署,对 生产分支(通常为“main”)进行的所有更改都会导致 生产部署。
或者,您可以单击下面的部署按钮来创建一个新项目
Bip
Bip 是一项商业托管服务,为静态网站提供零停机时间部署、全球 CDN、SSL、无限带宽等功能。计划按每次使用、每个域名的基础提供。
入门快速简便,因为 Bip 为 Hexo 提供开箱即用的支持。本指南假设您已经 安装了 Bip 域名和 Bip CLI。
1:初始化您的项目目录
$ bip init |
按照提示操作,系统会询问您要部署到哪个域名。Bip 会检测到您使用的是 Hexo,并自动设置项目设置,例如源文件目录。
2:部署您的网站
$ hexo generate —deploy && bip deploy |
片刻之后,您的网站将被部署。
RSS3
hexo-deployer-rss3
已于 2023 年弃用。
RSS3 是一种为 Web 3.0 时代的内容和社交网络设计的开放协议。
修改配置。
deploy: # The root configuration block for all deployers |
参数 | 描述 |
---|---|
endpoint |
RSS3 Hub 的链接 |
privateKey |
您的私钥,64 字节 |
ipfs/deploy |
是否部署到 IPFS |
ipfs/gateway |
IPFS API 网关 |
ipfs/api/key |
与 IPFS 网关相关的身份验证内容 |
ipfs/api/secret |
与 IPFS 网关相关的身份验证内容 |
生成静态文件
deploy
有关部署方面的考虑,您可以参考 我们的文档。
Edgio (formerly Layer0)
Edgio (formerly Layer0) 是一个互联网规模的平台,使团队能够轻松地构建、发布、保护和加速他们的 Web 应用和 API。
- 在您的 hexo 项目目录中,安装 Edgio CLI
npm i -g @edgio/cli |
- 安装 Edgio 的 Hexo 连接器
edgio init --connector=@edgio/hexo |
- 部署
edgio deploy |
或者,您可以单击下面的部署按钮来创建一个新项目
其他方法
所有生成的文件都保存在 public
文件夹中。您可以将它们复制到您喜欢的任何位置。