準備オーケー
- ローカルhexoが構成されました
- パーソナルシステム:deepin15.11
- サーバー:Ubuntu 18.04
はじめましょう
gitとnginxをインストールします
apt update
apt install git nginx
nginxを構成する
nginxバージョン:nginx / 1.14.0(Ubuntu)
ここでは、インターネット上で多くのnginx構成を試しましたが、どれも有効にならなかったため、nginxバージョンについて説明します(Apacheのみを使用することをお許しください)。後で、有効にする構成の特定のバージョンを検索しました。そのため、将来的には、検索時にバージョンを追加する習慣を身に付ける必要があります。
私のブログディレクトリは/ opt / hexoにあります
もちろん、自分で設定することもできます。次の手順でディレクトリに変更するだけです。
mkdir /opt/hexo
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
}
nginxを再起動します
service nginx restart
この時点で、デフォルトサイトを/ opt / hexoに変更しました。対応するディレクトリに新しいファイルアクセスIPを作成して、機能するかどうかを確認できます。
Gitフックを構成する
Gitベアウェアハウスを作成する
blog.gitはリモートGitリポジトリであり、Hexoによってローカルに生成されたブログ静的ファイルはプッシュを介して同期できます。
mkdir ~/blog.git && cd ~/blog.git
git init --bare
フックスクリプトの構成
ポスト受信スクリプトは、blog.gitリポジトリがプッシュを受信したときに実行されます。
vim ./hooks/post-receive
スクリプトは非常に単純で、元の** / opt / hexoディレクトリを削除してから、blog.gitリポジトリから新しいブログ静的ファイルのクローンを作成します。
#!/bin/bash
rm -rf /opt/hexo
git clone /root/blog.git /opt/hexo
受信後のスクリプト実行許可を与える
chmod +x ./hooks/post-receive
ローカルファイルを変更する
ローカルブログのルートディレクトリにある_config.ymlを変更します
deploy:
type: git
repo: root@你的公网ip:blog.git
以下に示すように
パスワードなしのプッシュコード
ローカルにsshキーがあることが前提です(cat〜 / .ssh / id_rsa.pubを使用して、存在するかどうかを確認できます)
sshキーがない場合は、sshキーを生成する必要があり、3Enterキーを押します。
ssh-keygen -t rsa -C "[email protected]"
次に、公開鍵をサーバーにプッシュします
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"
展開ブログ
ローカルブログルートディレクトリで実行します
hexo g -d
パブリックネットワークIPにアクセスすると、ブログを表示できます。ドメイン名が構成されている場合は、ドメイン名を解決することを忘れないでください(ポートが開いているかどうかに注意してください)。
最後に書く
上記は、hexoブログをサーバーにデプロイするプロセス全体です。このブログを書いた理由は、以前にサーバーを使用してブログをデプロイしたためです。有効期限が切れた後、別のサーバーを購入し、関連する操作を検索する必要がありました。
将来のニーズを促進するために、ここに関連する操作を記録します。