Публикация

Hexo обеспечивает быстрый и простой способ размещения. Нужна только одна команда, чтобы развернуть свой сайт на сервере.

$ hexo deploy

Перед первой публикацией сайта нужно изменить некоторые настройки в _config.yml. Правильные параметры развёртывания должны иметь поле type. Например:

deploy:
type: git

Вы можете использовать несколько сервисов размещения. Hexo будет выполнять все в том порядке, какой указан в файле.

deploy:
- type: git
repo:
- type: heroku
repo:

Расположение списка дополнительных плагинов для развертывания: Plugins.

Git

  1. Установка hexo-deployer-git.
$ npm install hexo-deployer-git --save
  1. Отредактируйте _config.yml (примеры значений, показаны ниже в качестве комментариев):
deploy:
type: git
repo: <repository url> #https://bitbucket.org/JohnSmith/johnsmith.bitbucket.io
branch: [branch]
message: [message]
Опция Описание По умолчанию
repo URL-адрес целевого репозитория
branch Название ветки. gh-pages (GitHub)
coding-pages (Coding.net)
master (другое)
message Конфигурирация сообщения о коммите. Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }}
token Необязательное значение токена для аутентификации в репозитории. Префикс с $ для чтения, взятый из переменной среды
  1. Разместите свой сайт hexo clean && hexo deploy.
  • Вам будет предложено ввести имя пользователя и пароль целевого репозитория, если вы не аутентифицируетесь с помощью токена или ssh-ключа.
  • hexo-deployer-git не хранит ваше имя пользователя и пароль. Используйте git-credential-cache, чтобы временно их хранить.
  1. Перейдите в настройки своего репозитория и измените ветвь “Pages” на gh-pages (или ветвь, указанную в вашей конфигурации). Развернутый сайт должен быть доступен по ссылке, указанной в параметре “Pages”.

Heroku

Установите hexo-deployer-heroku.

$ npm install hexo-deployer-heroku --save

Изменение параметров.

deploy:
type: heroku
repo: <repository url>
message: [message]
Опция Описание
repo, repository Адрес Heroku репозитория
message Изменение описания коммита (По умолчанию: Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }})

Rsync

Установите hexo-deployer-rsync.

$ 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]
Опция Описание Умолчание
host Адрес удалённого хоста
user Имя пользователя
root Корневой каталог на удалённом хосте
port Порт 22
delete Удаление старых файлов на удаленном хосте true
verbose Выводить подробные сообщения true
ignore_errors Игнорировать ошибки false

OpenShift

hexo-deployer-openshift has been deprecated in 2022.

Установите hexo-deployer-openshift.

$ npm install hexo-deployer-openshift --save

Изменение параметров.

deploy:
type: openshift
repo: <repository url>
message: [message]
Опция Описание
repo Адрес OpenShift репозитория
message Изменение описания коммита (По умолчанию: Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }})

FTPSync

Установите hexo-deployer-ftpsync.

$ npm install hexo-deployer-ftpsync --save

Изменение параметров.

deploy:
type: ftpsync
host: <host>
user: <user>
pass: <password>
remote: [remote]
port: [port]
clear: [true|false]
verbose: [true|false]
Опция Описание Значение по умолчанию
host Адрес удалённого хоста
user Имя пользователя
pass Пароль
remote Корневой каталог на удалённом хосте /
port Порт 21
clear Remove all files and directories from the remote directory before upload false
verbose Выводить подробные сообщения false

Vercel

Vercel это облачная платформа, которая позволяет разработчикам размещать веб-сайты и веб-службы Jamstackкоторые мгновенно развертываются, автоматически масштабируются и не требуют контроля, все с нулевой конфигурацией. Они обеспечивают глобальную пограничную сеть, шифрование SSL, сжатие ресурсов, аннулирование кэша и многое другое.

Шаг 1: Добавьте сценарий сборки в файл package.json:

{
"scripts": {
"build": "hexo generate"
}
}

Шаг 2: Разместите свой веб-сайт Hexo в Vercel

Для разворачивания вашего приложения Hexo с помощью Vercel для интеграции с Git, убедитесь, что он был отправлен в репозиторий Git.

Импортируйте проект в Vercel с помощью Import Flow. Во время импорта вы найдете все соответствующие параметры, предварительно настроенные для вас; однако вы можете изменить любой из этих параметров, список которых можно найти здесь.

После импорта вашего проекта все последующие изменения в ветви будут создавать Preview Deployments, и все изменения, внесенные в Production Branch (обычно “main”) приведет к [Production Deployment] (https://vercel.com/docs/platform/deployments#production).

Кроме того, вы можете нажать кнопку разместить ниже, чтобы создать новый проект:

Разместить в Vercel

Bip

Bip - это коммерческая услуга хостинга, которая обеспечивает развертывание с нулевым временем простоя, глобальную CDN, SSL, неограниченную пропускную способность и многое другое для статических веб-сайтов. Планы доступны с оплатой по факту (pay as you go), в зависимости от домена.

Начало работы происходит быстро и легко, так как Bip обеспечивает стандартную поддержку Hexo. В этом руководстве предполагается, что у вас уже есть домен Bip и установленный интерфейс командной строки.

1: Инициализируйте каталог вашего проекта

$ bip init

Следуйте инструкциям, где вас спросят, в каком домене вы хотите выполнить развертывание. Bip обнаружит, что вы используете Hexo, и автоматически установит параметры проекта, такие как каталог исходных файлов.

2: Разместите свой веб-сайт

$ hexo generate —deploy && bip deploy

Через несколько мгновений ваш веб-сайт будет размещён.

RSS3

hexo-deployer-rss3 has been deprecated in 2023.

[RSS3] (https://rss3.io) - это открытый протокол, разработанный для контента и социальных сетей в эпоху Web 3.0.

  1. Установите hexo-deployer-rss3.

  2. Измените конфигурацию.

deploy:
- type: rss3
endpoint: https://hub.rss3.io
privateKey: 47e18d6c386898b424025cd9db446f779ef24ad33a26c499c87bb3d9372540ba
ipfs:
deploy: true
gateway: pinata
api:
key: d693df715d3631e489d6
secret: ee8b74626f12b61c1a4bde3b8c331ad390567c86ba779c9b18561ee92c1cbff0
Параметры Описание
endpoint Ссылка на RSS3 Hub
privateKey Ваш закрытый ключ, 64 байта
ipfs/deploy Следует ли развертывать в IPFS
ipfs/gateway IPFS API Gateway
ipfs/api/key Проверочный контент, связанный со шлюзом IPFS
ipfs/api/secret Проверочный контент, связанный со шлюзом IPFS
  1. Создавайте статические файлы.

  2. Развертывание

Меры предосторожности, связанные с конкретным развертыванием, можно найти в нашей документации.

Другие способы

Все созданные файлы сохраняются в папке public. Вы можете скопировать их куда угодно.