$ npm install hexo-deployer-git --save
deploy:
type: git
repo: <repository url> #https://bitbucket.org/JohnSmith/johnsmith.bitbucket.io
branch: [branch]
message: [message]
參數(shù) | 描述 | 默認(rèn) |
---|---|---|
repo
|
庫(kù)(Repository)地址 | |
branch
|
分支名稱 | gh-pages (GitHub) coding-pages (Coding.net) master (others) |
message
|
自定義提交信息 | Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
token
|
Optional token value to authenticate with the repo. Prefix with $ to read token from environment variable |
當(dāng)執(zhí)行 hexo deploy 時(shí),Hexo 會(huì)將 public 目錄中的文件和目錄推送至 _config.yml 中指定的遠(yuǎn)端倉(cāng)庫(kù)和分支中,并且完全覆蓋該分支下的已有內(nèi)容。
For 使用 Git 管理站點(diǎn)目錄的用戶由于 Hexo 的部署默認(rèn)使用分支 master,所以如果你同時(shí)正在使用 Git 管理你的站點(diǎn)目錄,你應(yīng)當(dāng)注意你的部署分支應(yīng)當(dāng)不同于寫作分支。 一個(gè)好的實(shí)踐是將站點(diǎn)目錄和 Pages 分別存放在兩個(gè)不同的 Git 倉(cāng)庫(kù)中,可以有效避免相互覆蓋。 Hexo 在部署你的站點(diǎn)生成的文件時(shí)并不會(huì)更新你的站點(diǎn)目錄。因此你應(yīng)該手動(dòng)提交并推送你的寫作分支。
此外,如果您的 Github Pages 需要使用 CNAME 文件自定義域名,請(qǐng)將 CNAME 文件置于 source 目錄下,只有這樣 hexo deploy 才能將 CNAME 文件一并推送至部署分支。
$ npm install hexo-deployer-heroku --save
修改配置。
deploy:
type: heroku
repo: <repository url>
message: [message]
參數(shù) | 描述 |
---|---|
repo
|
Heroku 庫(kù)(Repository)地址 |
message
|
自定提交信息 (默認(rèn)為 Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
Netlify 是一個(gè)提供網(wǎng)絡(luò)托管的綜合平臺(tái)。它集持續(xù)集成(CI)CDN 自定義域名 HTTPS 持續(xù)部署(CD)等諸多功能于一身。您可以通過(guò)以下兩種方式將 Hexo 站點(diǎn)部署到 Netlify。
首先,也是最通用的方式,就是使用 Netlify 提供的網(wǎng)頁(yè)端用戶界面。前往新建一個(gè)網(wǎng)站頁(yè)面,選擇需要關(guān)聯(lián)的 Github/BitBucket/Gitlab 庫(kù),然后遵循網(wǎng)站提示。
另一種方式是使用 Netlify 提供的命令行客戶端工具 Node based CLI 管理和部署您的站點(diǎn)。
此外,您還可以在項(xiàng)目的README中增加一個(gè) 部署至Netlify按鈕,這樣其他用戶在 fork 或 clone 了您的項(xiàng)目之后可以方便快捷地一鍵部署。
$ npm install hexo-deployer-rsync --save
修改配置。
deploy:
type: rsync
host: <host>
user: <user>
root: <root>
port: [port]
delete: [true|false]
verbose: [true|false]
ignore_errors: [true|false]
參數(shù) | 描述 | 默認(rèn)值 |
---|---|---|
host
|
遠(yuǎn)程主機(jī)的地址 | |
user
|
使用者名稱 | |
root
|
遠(yuǎn)程主機(jī)的根目錄 | |
port
|
端口 | 22 |
delete
|
刪除遠(yuǎn)程主機(jī)上的舊文件 | true |
verbose
|
顯示調(diào)試信息 | true |
ignore_errors
|
忽略錯(cuò)誤 | false |
rsync 部署模塊的工作方式需要注意的是,要求您提供的實(shí)際上是一個(gè)能通過(guò) SSH 登陸遠(yuǎn)程主機(jī)的 Linux 用戶。Hexo 會(huì)自動(dòng)處理關(guān)于rsync 使用的一切操作。因此,您需要在遠(yuǎn)程主機(jī)上為您的 Hexo 站點(diǎn)建立一個(gè)用戶,并允許其通過(guò) SSH 登陸。不過(guò),這里的port,的確是指 rsync 監(jiān)聽(tīng)的端口,請(qǐng)確保防火墻打開(kāi)了該端口。
$ npm install hexo-deployer-openshift --save
修改配置。
deploy:
type: openshift
repo: <repository url>
message: [message]
參數(shù) | 描述 |
---|---|
repo
|
OpenShift 庫(kù)(Repository)地址 |
message
|
自定提交信息 (默認(rèn)為 Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
$ npm install hexo-deployer-ftpsync --save
修改配置。
deploy:
type: ftpsync
host: <host>
user: <user>
pass: <password>
remote: [remote]
port: [port]
ignore: [ignore]
connections: [connections]
verbose: [true|false]
參數(shù) | 描述 | 默認(rèn)值 |
---|---|---|
host
|
遠(yuǎn)程主機(jī)的地址 | |
user
|
使用者名稱 | |
pass
|
密碼 | |
remote
|
遠(yuǎn)程主機(jī)的根目錄 | /
|
port
|
端口 | 21 |
ignore
|
忽略的文件或目錄 | |
connections
|
使用的連接數(shù) | 1 |
verbose
|
顯示調(diào)試信息 | false |
FTP 部署可能出現(xiàn)的問(wèn)題您可能需要預(yù)先通過(guò)其他方式將所有文件上傳到遠(yuǎn)程主機(jī)中。否則初次使用 ftpsync 插件就可能出現(xiàn)報(bào)錯(cuò)。另外,由于 FTP 協(xié)議的特征,它每傳送一個(gè)文件就需要一次握手,相對(duì)速度較慢。
$ npm install hexo-deployer-sftp --save
修改配置。
deploy:
type: sftp
host: <host>
user: <user>
pass: <password>
remotePath: [remote path]
port: [port]
privateKey: [path/to/privateKey]
passphrase: [passphrase]
agent: [path/to/agent/socket]
參數(shù) | 描述 | 默認(rèn)值 |
---|---|---|
host
|
遠(yuǎn)程主機(jī)的地址 | |
user
|
使用者名稱 | |
pass
|
密碼 | |
remotePath
|
遠(yuǎn)程主機(jī)的根目錄 | /
|
port
|
端口 | 22 |
privateKey
|
ssh私鑰的目錄地址 | |
passphrase
|
(可省略)ssh私鑰的密碼短語(yǔ) | |
agent
|
ssh套接字的目錄地址 | $SSH_AUTH_SOCK
|
Vercel is a cloud platform that enables developers to host Jamstack websites and web services that deploy instantly, scale automatically, and requires no supervision, all with zero configuration. They provide a global edge network, SSL encryption, asset compression, cache invalidation, and more.
Step 1: Add a build script to your package.json file:
{
"scripts": {
"build": "hexo generate"
}
}
Step 2: Deploy your Hexo Website to Vercel
To deploy your Hexo app with a Vercel for Git Integration_blank, make sure it has been pushed to a Git repository.
Import the project into Vercel using the Import Flow_blank. During the import, you will find all relevant options preconfigured for you; however, you can choose to change any of these options, a list of which can be found here_blank.
After your project has been imported, all subsequent pushes to branches will generate Preview Deployments_blank, and all changes made to the Production Branch (commonly “main”) will result in a Production Deployment_blank.
Alternatively, you can click the deploy button below to create a new project
樣例已經(jīng)部署在 https://hexo.21yunbox.com/.
Bip is a commercial hosting service which provides zero downtime deployment, a global CDN, SSL, unlimited bandwidth and more for static websites. Plans are available on a pay as you go, per domain basis.
Getting started is quick and easy, as Bip provides out the box support for Hexo. This guide assumes you already have a Bip domain and Bip CLI installed.
1: Initialise your project directory
$ bip init
Follow the prompts, where you’ll be asked which domain you’d like to deploy to. Bip will detect that you’re using Hexo, and set project settings like the source file directory automatically.
2: Deploy your website
$ hexo generate —deploy && bip deploy
After a few moments, your website will be deployed.
Hexo 生成的所有文件都放在 public 文件夾中,您可以將它們復(fù)制到您喜歡的地方。
更多建議: