Если вы хотите создать блог

Nginx CDN

Если вы просто хотите настроить блог, то вам, вероятно, не нужен сервер, и это будет проще

Если вам необходимо выполнить развертывание на личном сервере, вы можете выполнить следующие шаги:

  1. Для настройки обратного прокси нужно знать конфигурацию nginx или traefik
  2. Настройте https, используйте let encrypt для создания сертификата
  3. Периодически обновлять сертификаты с помощью cron
  4. Развертывание вручную: вам необходимо входить на сервер каждый раз при развертывании.
  5. Автоматическое развертывание: настройте CI/CD с помощью github/gitlab
  6. При автоматическом развертывании можно использовать docker и docker-compose (можно самостоятельно собрать репозиторий docker)
  7. Если сервер куплен в облаке Alibaba, возможно, его все равно нужно будет зарегистрировать.

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

Это также общий процесс развертывания интерфейсных и внутренних приложений на k8s.

  1. Используйте k8s в сочетании с входом для автоматического создания сертификатов (разовая работа)
  2. Создайте диаграмму с рулем
  3. Создайте образ докера (возможно, создайте собственный репозиторий докеров)
  4. Настройте CI/CD с помощью github/gitlab

Условно говоря, использование услуги хостинга статических веб-сайтов уменьшит сложность и рабочую нагрузку, ведь во время развертывания необходимо поддерживать только несколько статических файлов. Это также больше подходит для студентов, которые плохо знакомы с блогами или не имеют сервера.

01 Выберите генератор статических сайтов

Состояние приложения динамического блога слишком тяжелое, слишком сложное, и его нелегко развернуть и перенести. Статический блог без сохранения состояния — хороший вариант.

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

Что касается генератора, это тот, который я использовал раньше, и он очень хорош. Вы можете выбрать один из них. Как собрать, обратитесь к официальной документации.

  • hugo: гитхаб звезда 39к. Использование go to development — это самый быстрый генератор, который я когда-либо использовал, и его введение состоит всего из одного предложения:The world’s fastest framework for building websites., но я чувствую, что у него немного меньше стиля темы. Если вы хотите настроить, то вам нужноgoлингвистическийtemplateНекоторые понимают.
  • hexo: гитхаб звезда 28.4k. Используя node development, существует множество стилей тем, я все же предпочитаю этот.
  • vuepress: гитхаб звезда 14,5к. Разработанный с помощью vue, он обычно используется для дополнительной документации. Как вы можете видеть из стиля моего блога, он используетvuepressПостроить.

02 Как развернуть

может быть развернут вgithub pagesилиnetlify

Рекомендуемое использованиеnetlify, он может сочетатьсяgithubДелайте CI/CD: когда вы отправляете код в указанную ветку github, он будет автоматически развернут в netlify, а также имеет кэш, перенаправление, Prerender и многие другие конфигурации.

  • github pages: Вторичное доменное имя можно использовать после развертывания.xxx.github.io
  • netlify: Вторичное доменное имя можно использовать после развертывания.xxx.netlify.com

мойличный блогиспользовалnetlify, файл конфигурации о сборке выглядит следующим образом

[build]
  base = ""
  publish = ".vuepress/dist"
  command = "npm run build"

[[headers]]
  for = "/assets/*"

  [headers.values]
    cache-control = "max-age=31536000"

03 Если вы хотите использовать собственное доменное имя

вы можете использовать провайдера доменного имениgodaddyилиАли КлаудПодпишитесь на один напрямую.

И настройте CNAME у провайдера домена:yourdomain.com -> xxx.netlify.com

После использования собственного доменного имени вам необходимо перейти наnetlifyНастроить для своего доменаhttps

04 Используйте CDN

Так как большинство серверов хостинга веб-сайтов находятся за границей, скорость сети может быть ужасной, поэтому настройка CDN может пригодиться.

Если доменное имя не зарегистрировано, рекомендуется использоватьcloudflareСервис CDN, совершенно бесплатно

Если доменное имя было зарегистрировано, рекомендуется использовать службу CDN Alibaba Cloud, которая будет оплачиваться по объему.

Конечно на этот разhttpsТребуется перенастройка (также будет взиматься плата за https-трафик Alibaba Cloud)

Примечание. При использовании CDN настройте правильный сервер имен.

05 Настроить постоянный кеш

对于 vue/react 此类现代前端技术而言,结合 webpack 工程化越来越出色。 Такие какvuepressсерединаSPAа такжеSEOкомбинация,Но самое главное — генерировать статические файлы ресурсов с хешем.

Настройка постоянного кеша на исходном сайте (netlify) для статических файлов ресурсов с хэшем также может сэкономить много трафика для CDN и https в облаке Alibaba.

[[headers]]
  for = "/assets/*"

  [headers.values]
    cache-control = "max-age=31536000"

Ниже приведен скриншот кэш-попаданий в CDN.

  1. cache-control: ma-age=31536000установить постоянный кеш
  2. viaчерез прокси узел
  3. x-cache: HITКэш хитов на CDN

proxy cache