Despliegue del blog hexo en el servidor

Listo para trabajar

  • Se ha configurado el hexo local
  • Sistema personal: deepin15.11
  • Servidor: Ubuntu 18.04

Empecemos

Instalar git y nginx

apt update
apt install git nginx

Configurar nginx

versión de nginx: nginx / 1.14.0 (Ubuntu)

Explico la versión de nginx aquí porque probé muchas configuraciones de nginx en Internet pero ninguna de ellas surtió efecto (perdóneme por usar solo Apache). Más tarde, busqué la versión específica de la configuración para que surta efecto. Entonces, en el futuro, todavía tendremos que desarrollar el hábito de agregar versiones al buscar.

El directorio de mi blog está en / opt / hexo

Por supuesto, también puede configurarlo usted mismo, simplemente cambie a su directorio en los siguientes pasos

mkdir /opt/hexo

Escribe el archivo de configuración de nginx

vim /etc/nginx/conf.d/blog.conf
server {
    
    
        listen 80 ;
        root /opt/hexo;
        index index.html index.htm index.nginx-debian.html;
        server_name 47.93.34.7; #有域名就填域名,也可填服务器公网ip
}

Reiniciar nginx

service nginx restart

En este momento, hemos cambiado el sitio predeterminado a / opt / hexo, puede crear una nueva IP de acceso a archivos en el directorio correspondiente para ver si funciona.

Configurar ganchos de Git

Crear almacén desnudo de Git

blog.git es un repositorio Git remoto, y los archivos estáticos del blog generados localmente por Hexo se pueden sincronizar con él a través de push.

mkdir ~/blog.git && cd ~/blog.git
git init --bare

Configurar el script de Hooks

El script posterior a la recepción se ejecutará cuando el repositorio blog.git reciba un envío .

vim ./hooks/post-receive

El script es muy simple, elimine el directorio ** / opt / hexo original y luego clone los archivos estáticos del nuevo blog del repositorio blog.git .

#!/bin/bash

rm -rf /opt/hexo
git clone /root/blog.git /opt/hexo

Dar el permiso de ejecución del script posterior a la recepción

chmod +x ./hooks/post-receive

Modificar archivos locales

Modifique _config.yml en el directorio raíz del blog local.

deploy:
    type: git
    repo: root@你的公网ip:blog.git

Como se muestra abajo

imagen-20201014235835414

Código push sin contraseña

La premisa es que hay una clave ssh localmente (puede usar cat ~ / .ssh / id_rsa.pub para ver si existe)

Si no hay clave ssh, necesita generar la clave ssh, presione 3 enter

ssh-keygen -t rsa -C "[email protected]"

Luego empuje la clave pública al servidor

cat ~/.ssh/id_rsa.pub | ssh [username]@[remote_host] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
例如:cat ~/.ssh/id_rsa.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Blog de implementación

Ejecutar en el directorio raíz del blog local

hexo g -d

Puede ver el blog visitando la IP de la red pública Si el nombre de dominio está configurado, no olvide resolver el nombre de dominio (tenga en cuenta si el puerto está abierto).

Escribir al final

Lo anterior es todo el proceso de implementación del blog hexo en el servidor. La razón por la que escribí este blog es que usé un servidor para implementar el blog antes. Después del vencimiento, compré otro servidor y tuve que buscar operaciones relacionadas.

Registre las operaciones relacionadas aquí para facilitar las necesidades futuras.

Supongo que te gusta

Origin blog.csdn.net/zss192/article/details/109095275
Recomendado
Clasificación