Ghostは、美しく設計された使いやすい強力なオープンソースのパブリッシングおよびブログプラットフォームです。 Ghostはjavascriptで記述されており、ランタイム環境としてnode.jsを使用します。最初のGhostバージョンはMITライセンスの下で2013年にリリースされ、常に更新されています。このチュートリアルでは、Ghost Blogソフトウェア、Node.js、ApacheをUbuntu16.04にSSLプロキシサーバーとしてインストールする方法を示します。
Nodejsは サーバーサイドWebアプリケーションを開発するためのChromeのV8JavaScriptエンジン(v4)上に構築されたオープンソースのjavaScriptランタイム。 Nodejsは、OS X、Microsoft Windows、Linux、およびFreeBSDで実行できるクロスプラットフォームランタイムです。イベント駆動型アーキテクチャとノンブロッキングI/Oモデルを提供し、リアルタイムWebアプリケーション向けに軽量で効率的になります。 Node.jsプロジェクトはRyanDahlによって2009年に開始され、今日の時点でバージョン6.5.0(LTS)に達しました。
- Ubuntu 16.04
- root権限
このチュートリアルで行うこと:
- Node.jsをインストールします
- Ghostをインストールする
- ゴーストを構成する
- Apacheをインストールし、GhostVirtualHostを追加します
- GhostのSSLを有効にする
このチュートリアルでは、nodejsv4.xを使用します。 Nodejsは、ソースからのインストールやUbuntuリポジトリからのインストールなど、さまざまな方法でインストールできます。 nodesecure https://deb.nodesource.com/node_4.xのnodejsリポジトリを使用します インストールの場合、最新のソフトウェアが含まれており、リポジトリを使用すると、後でnode.jsを簡単に更新できます。
次のコマンドを使用して、nodesourceリポジトリキーをインストールします。
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
次に、以下のコマンドを実行してnodejsリポジトリを追加します。
sudo echo 'deb https://deb.nodesource.com/node_4.x xenial main' > /etc/apt/sources.list.d/nodesource.list
sudo echo 'deb-src https://deb.nodesource.com/node_4.x xenial main' >> /etc/apt/sources.list.d/nodesource.list
リポジトリを更新します:
sudo apt-get update
これで、node.jsとそのサーバーへの依存関係をインストールする「nodejs」パッケージをインストールできます。
sudo apt-get install -y nodejs
次に、nodejsのバージョンをチェックして、インストールが成功したことを確認します。
node --version
npmバージョンを確認してください:
npm --version
npmは、ノードプログラムをインストール、公開、管理するためのパッケージマネージャーです。
ディレクトリ「/var/ www /」にghostをインストールし、最新バージョンのGhostを使用します。 / varに新しいディレクトリ「www」を作成し、「cd」と入力してください:
mkdir -p /var/www/
cd /var/www/
wgetコマンドでGhostをダウンロードし、「ghostblog」というディレクトリに解凍します:
wget https://ghost.org/zip/ghost-latest.zip
unzip -d ghostblog ghost-latest.zip
注 :-d:ディレクトリを自動的に作成します。
次に、ghostblogディレクトリに移動し、 npmを使用してGhostをインストールします。 コマンド:
cd ghostblog/
sudo npm install --production
ghostblogディレクトリに移動し、構成サンプルファイルを「config.js」にコピーしてください
cd /var/www/ghostblog/
cp config.example.js config.js
次に、新しいユーザー「ghost」を追加します。このユーザーは、Ghostを実行するように訴えられます:
useradd -d /var/www -s /bin/bash ghost
passwd ghost
TYPE NEW PASSWORD FOR ghost USER
注:
-d =/var/www/内のゴーストユーザーのホームディレクトリを定義します。
-s=ゴーストユーザーのシェルを定義します。
次に、ゴーストインストールディレクトリの所有者をユーザー「ghost」に変更します。
chown -R ghost:ghost /var/www/ghostblog
ghost userとしてnpmコマンドを実行して、ghostblogをテストします。ユーザーゴーストにログインしてください:
su - ghost
インストールディレクトリに移動してGhostを起動します:
cd ghostblog/
npm start --production
Ghostは、ポート2368のローカルホストにインストールされて実行されています。curlコマンドで確認できます:
curl -I localhost:2368
ゴーストが実行されていることがわかります-HTTP / 1.1 200 OK 。
ゴーストを開始しやすくするために、サービスとしてゴーストを実行します。 「exit」と入力してsudo/rootユーザーに戻り、ディレクトリ「/ lib / systemd /system/」に「ghost.service」という名前の新しいファイルを作成してください。
cd /lib/systemd/system/
vim ghost.service
以下にsystemdスクリプトを貼り付けます:
[Unit] Description=ghost After=network.target [Service] Type=simple # Ghost installation Directory WorkingDirectory=/var/www/ghostblog User=ghost Group=ghost ExecStart=/usr/bin/npm start --production ExecStop=/usr/bin/npm stop --production Restart=always SyslogIdentifier=Ghost [Install] WantedBy=multi-user.target
次に、systemdデーモンをリロードします:
systemctl daemon-reload
次に、起動時に開始するゴーストを追加し、systemctlコマンドを使用してゴーストを開始します。
systemctl enable ghost
systemctl start ghost
ポート2368をチェックして、ゴーストが実行されていることを確認します。
netstat -plntu
apt-getコマンドでapacheをインストールします:
sudo apt-get install apache2
インストールが完了したら、ディレクトリ「/ etc / apache2 /sites-available/」にゴースト仮想ホストの新しいファイルを作成します。
sudo cd /etc/apache2/sites-available/
sudo vim ghostblog.conf
以下に設定を貼り付けます:
<VirtualHost *:80> #Domain Name ServerName ghostblog.me ServerAlias www.ghostblog.me #HTTP proxy/gateway server ProxyRequests off ProxyPass / http://127.0.0.1:2368/ ProxyPassReverse / http:/127.0.0.1:2368/ </VirtualHost>
保存して終了します。
以下に示すように、コマンドa2enmodを使用してApacheでHTTPプロキシモジュールをアクティブ化します。
sudo a2enmod proxy proxy_http
最後に、Ghost仮想ホストをアクティブにしてから、apacheを再起動する必要があります:
sudo a2ensite ghostblog
sudo systemctl restart apache2
ゴーストを再起動します:
sudo systemctl restart ghost
ドメインにアクセスしてテストします: http://ghostblog.me
ApacheでSSLを有効にするには、OpenSSLライブラリがシステムにインストールされていることを確認してください。ディレクトリ「/etc/ apache2/certs」に新しいキーとcrtファイルを生成します。まず、新しいディレクトリ証明書を作成します:
sudo mkdir -p /etc/apache2/certs
そして、以下のコマンドで証明書キーを生成します:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/certs/ghostblog.key -out /etc/apache2/certs/ghostblog.crt
証明書ファイルの権限を変更してください:
sudo cd /etc/apache2/certs/
sudo chmod 600 *
次に、「ghostblog.conf」ファイルを編集して、SSL構成をゴースト仮想ホストに追加します。
sudo cd /etc/apache2/sites-available/
sudo vim ghostblog.conf
以下に新しい構成スクリプトを貼り付けます:
<VirtualHost *:80> ServerName ghostblog.me ServerAlias www.ghostblog.me # Force http to https Redirect permanent / https://ghostblog.me/ # ProxyRequests off # ProxyPass / http://127.0.0.1:2368/ # ProxyPassReverse / http:/127.0.0.1:2368/ </VirtualHost> <VirtualHost *:443> ServerName ghostblog.me SSLEngine on SSLCertificateFile /etc/apache2/certs/ghostblog.crt SSLCertificateKeyFile /etc/apache2/certs/ghostblog.key ProxyPass / http://127.0.0.1:2368/ ProxyPassReverse / http:/127.0.0.1:2368/ ProxyPreserveHost On RequestHeader set X-Forwarded-Proto "https" </VirtualHost>
ファイルを保存してvimを終了します。
OpenSSL apacheモジュールをアクティブにして、apacheを再起動します:
sudo a2enmod ssl headers
sudo systemctl restart apache2
http://ghostblog.meにアクセスします 、ブログのHTTPS/SSLサイトに移動する必要があります。
apacheとSSLを備えたGhostが正常にインストールされました。
Nodejsは、サーバー側のWebアプリケーションを構築するためのオープンソースのマルチプラットフォームJavaScriptランタイムです。リアルタイムWebアプリケーション向けに軽量で効率的です。 Ghostは、Node.js用のJavascriptで記述されたブログプラットフォームです。 Ghostは美しくデザインされており、ユーザーフレンドリーです。直感的なインターフェースにより、このブログシステムは使いやすくなっています。 Ghostは、スタンドアロンでインストールすることも、ApacheやNginxなどのウェブサーバーと一緒にインストールすることもできます。 OpenSSLを使用してGhostを保護できます。 ApacheとOpenSSLを使用したGhostの構成は簡単で、apachehttp_proxyモジュールをセットアップしてSSL証明書を生成するだけです。