タグ: Linux Page 21 of 25

Ubuntu系Linuxの最初の設定。

検証にしろなんにしろ、最初に行っている作業のメモ書きです。

サーバ名をドメイン込みで再設定

hostnamectl set-hostname [サーバ名]
uname -n
# 指定したサーバ名が表示されることを確認

Ubuntu系Linuxは、ドメイン込みでサーバ名を登録してもフルネームで登録されません。ここで最初にサーバ名を確定させます。

~/.bashrc末尾に以下を追記

PS1="[\u@\H \W]\\$ "
HISTSIZE=50000

→ これにより、ユーザ名とホスト名のフルネームがプロンプトに表示されます。また、コマンド「history」で記憶させる上限を増やします。

/etc/bash.bachrcに以下を追記

export HISTTIMEFORMAT='%y/%m/%d %H:%M:%S '

→ これはほぼ必須です。コマンド「history」を実行したときの日時を指定することでその後の証跡が追いやすくなります。

検証: redmine 4.2のデータを別サーバに完全移行。

以前書いた

の、うち、「バックアップしたデータを新しいサーバに移設する」が成功したので、その備忘録になります。

やったこと

現行で稼働しているredmineサーバを、新規LinuxMintサーバにデータを流し込み、復元させた。

以降元と移行先サーバ

共にLinux Mint20.03が稼働しています。

手順

基本的に管理者権限で行っていますが、ユーザーで行う場合はそれを追記します。

移行先で行う作業-redmine構築-

新規にRedmine 4.2を作ります。最初に作成するときにもお世話になった

https://eco.senritu.net/ubuntu20-04%E3%81%B8redmine4-2-x%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/

こちらを用いましたが、以下、異なる部分があります。

Apacheのバージョンを脆弱性対応版に上げる
mysql_secure_installationが正常に動かない問題に対処する
vi /etc/mysql/mysql.conf.d/mysqld.cnf
追記内容
末尾に以下を追加
default_authentication_plugin=mysql_native_password

設定後にmysqlサービス再起動

systemctl restart mysql

MySQL rootパスワード設定

mysql -u root -p
# 未設定のためパスワードは不要です
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'パスワード';
#パスワードは任意のものを入力ください
flush privileges;
exit

後は参考サイトの手順に沿ってredmine4.2を起動させます。 このとき、database.ymlやconfiguration.ymlは以降元に合わせます。また、rubyのバージョンは2.7系にしています。

移行元で行う作業-redmineバックアップと転送-

DBのバックアップ

※こちらは通常ユーザで実行しました。

mysqldump redmine(DB名) --no-tablespaces -u redmine(DBユーザ) -p > redmine_backup

を実行し、DB全体のバックアップを取ります。

redmineデータのバックアップ

ここからは管理者権限で実施します。

cd /var/lib/redmine
# インストールされているredmineディレクトリに移動

このうち、

  • /redmine/files
  • /redmine/plugins
  • /redmin/public/thems

の3ディレクトリが移行先に流し込むデータとなります。

  • rsyncやscpを用いてのデータ転送
  • 一度圧縮して転送

など、任意のものを用います。

移行先で行う作業-redmineデータのリストア-

上段で述べた

  • files
  • plugins
  • public/themes

を、移行元と同じように配置します。このとき、ディレクトリやファイルの所有権が元と同じ(通例はwww-data)になるようにします。

そして、sqldumpで取得したDBも移行先に持っていきます。

プラグインのマイグレーション

cd /var/lib/redmine
bundle exec rake redmine:plugins:migrate RAILS_ENV=production

DBのリストア

 mysql -u redmine -p redmine < redmine_backup

を実施後、

systemctl restart apache2.service

を行うことで

以降元、移行先、共に

  • 同じテーマ
  • 同じプラグイン
  • 同じ添付ファイル

が見えることを確認しました。

前回、ちょっとしたDBのリストアを行いましたが、プラグインや添付ファイルを含めた完全な移行テストは初めて。

これで、もしもの時のためのリストア手順が整いました。

Apache脆弱性対応。(リポジトリを用いたパッケージアップデート)

AWS Lightsailを用いてインターネット接続されている自分用のredmine。

いわゆる

  • Linux
  • Apache
  • MySQL
  • Ruby

で動いておりますが、その中のApacheに脆弱性があるので対応しました。

Apache HTTP Server 2.4における複数の脆弱性に対するアップデート

https://jvn.jp/vu/JVNVU94306894/

手順

全て管理者権限で実行しています。

Ubuntu 20.04の標準パッケージでインストールされているApacheのバージョンを確認します。

apache2 -v

# 以下、脆弱性を受けるバージョンです。
Server version: Apache/2.4.41 (Ubuntu)
Server built:   2022-06-14T13:30:55

リポジトリを追加します。

add-apt-repository ppa:ondrej/apache2
# 途中、Press[Enter]と表示されるので空エンターを打ちます。

パッケージを更新します。

aptitude update
aptitude upgrade
# 確認の前に、パッケージ一覧を確認します。

パッケージ更新後のApacheのバージョンを確認します。

apache2 -v
Server version: Apache/2.4.54 (Ubuntu)
Server built:   2022-06-08T15:59:07
# 最新版である2.54であることを確認します。

サービスを再起動し、既存サイトが問題なく動くかを確認します。

systemctl restart apache2.service 

これで、ひとまずは安心です。

自宅サーバ増設と今後の予定。

こちらの件を一歩進めました。

Chuwi Herobox pro到着

結局、現行2台と同じ機種にしました。

  • ファンレス無音
  • 省電力
  • 夏、日中にエアコンを切っていても稼働していた

などの実績からこちらです。

To Do

redmineのリストア

まっさらの機体が手に入ったので、「自宅環境のコアとなっているシステム」redmineが別の機体でも移行できるかを試します。

フォトアルバムリプレース

現状、Lycheeを使っておりますが、このほかのフォトアルバムも検証します。

Nextcloud検証

上記の後の本命。自宅にDropbox的なオンラインストレージを用意することでデータの冗長化を目指します。

PHPアップデート後の処理。(7.4 → 8.1)

検証で動かしていたUbuntu 20.04系サーバで

sudo aptitude update
sudo aptitude upgrade

と実施するとphpパッケージが8.1にアップグレードされていました。

その後、apache/PHPで稼働しているサイトが[Server Error]となったので、その対処方法をメモしました。

手順

今まで動いていたPHP7.4を無効化します。

a2dismod php7.4

PHP8.1を有効化します。

a2enmod php8.1

サービス再起動し、稼働することを確認します。

systemctl restart apahce2

これにより、正常稼働を確認です。

以前にインストールした

  • Lychee フォトアルバム
  • Snipe-IT

はいずれも稼働していました。

新たな問題

完全に見落としていましたが、Zabbix 5.0はphp 8.1では動かず、以下のように表示されます。

これに関してはバージョンアップを見据えつつ、対処していく必要があります。

Growiアップデート。(5.05→5.12)

非常に使いやすいmarkdownシステムGrowi。

2022/08/26時点での最新版にアップデートをします。

環境

  • Ubuntu 20.04
  • node.js 14.20.0
  • npm 6.14.17
  • yarn 1.22.19
  • mongodb 4.4.15

※Dockerではなく、以下のようにインストール済みです

手順

管理者にスイッチします。

sudo su -

growiサービスを停止します。

systemctl stop growi.service
systemctl status growi.service
# inactiveになっていることを確認します

作業ディレクトリに移動します。

cd /opt/growi
pwd
# /opt/growiにいることを確認

バージョンアップ環境を確認します。

git fetch --tags
# 2022/08/26時点での最新版が v5.1.2であることを確認

バージョンアップを行います。

git stash
# No local changes to saveと表示されることを確認
git checkout v5.1.2
yarn
# Done in xx.xxs. と表示されたらアップデートされています

インストール後、growiサービスを起動します。

systemctl start growi.service
# 環境にもよりますが、数分かかります

バージョンアップを確認します。

バージョンアップ後、growiサイトにアクセスし、「Wiki管理トップ」に移動。

システム情報で、GROWIが「5.1.2」になっていることを確認します。

共存環境。(AWS LightsailにredmineとSnipe-ITを追加)

こちらの資産管理システムSnipe-IT、使っていけば行くほど「これは出先からでも参照したい」と実感。

なので、既にredmineが稼働しているインスタンスに同居させました。

詳細手順は以下のとおりです。

前提

以下の環境で稼働しています。

  • Ubuntu 20.04
  • Apache 2.4
  • Ruby 2.7
  • MySQL 8系

下準備

  • 既に稼働しているインスタンスとDNSに、サブドメインを指定します。
  • そのサブドメインは既に稼働しているインスタンスのIPと紐づけます。

PHPとモジュールを追加します。

sudo add-apt-repository ppa:ondrej/php
sudo aptitude update
sudo aptitude upgrade

sudo apt install php7.4
# バージョンを明示しないと、このあとのモジュールとの兼ね合いで失敗しました

sudo apt install php7.4-{opcache,pdo,bcmath,calendar,ctype,fileinfo,ftp,gd,intl,json,ldap,mbstring,mysqli,posix,readline,sockets,bz2,tokenizer,zip,curl,iconv,phar,xml}
# Web上のマニュアルのとおりに指定しましたが、インストール時に「xml」を入れるよう指示がありました

sudo systemctl restart apache2

Snipe-IT用のDBを設定します。

sudo mysql -u root -p
CREATE DATABASE snipeit_db;
CREATE USER  'snipeit'@'localhost' IDENTIFIED WITH mysql_native_password BY 'パスワード';
GRANT ALL PRIVILEGES ON snipeit_db.* TO 'snipeit'@'localhost' with grant option;
FLUSH PRIVILEGES;
exit

Snipe-ITをダウンロードします。

cd /var/www/html
sudo git clone https://github.com/snipe/snipe-it snipe-it
cd /var/www/html/snipe-it

Snipe-ITの基本設定を行います。

sudo cp -pi .env.example .env
sudo vi .env
設定ファイル内容
APP_URL=設定したURL
APP_TIMEZONE='Asia/Tokyo'
DB_CONNECTION=mysql
DB_HOST=localhost # 127.0.0.1だと接続できないことがありました
DB_DATABASE=snipeit_db
DB_USERNAME=snipeit
DB_PASSWORD=パスワード
DB_PREFIX=null
DB_DUMP_PATH='/usr/bin'
DB_CHARSET=utf8mb4
DB_COLLATION=utf8mb4_unicode_ci

(オプション)Gmailと連携をさせます。

先程の.envの以下の箇所を編集します。

# --------------------------------------------
# REQUIRED: OUTGOING MAIL SERVER SETTINGS
# --------------------------------------------
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=Gmailアドレス
MAIL_PASSWORD='Gmailのアプリパスワード'
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDR=Gmailアドレス
MAIL_FROM_NAME='Snipe-IT'
MAIL_REPLYTO_ADDR=Gmailアドレス
MAIL_REPLYTO_NAME='Snipe-IT'
MAIL_AUTO_EMBED_METHOD='attachment'

Composerのインストールを行います。

sudo su -
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
cd /var/www/html/snipe-it/
exit
sudo composer update --no-plugins --no-scripts
sudo composer install --no-dev --prefer-source --no-plugins --no-scripts
sudo php artisan key:generate
sudo chown -R www-data:www-data /var/www/html/snipe-it
sudo chmod -R 755 /var/www/html/snipe-it

Snipe-ITのバーチャルサイトを設定します。

cd /etc/apache2/sites-available
vi snipe-it.conf
snipe-it.conf内容
<VirtualHost *:80>
    ServerName 前準備で設定したドメイン
    DocumentRoot /var/www/html/snipe-it/public
    <Directory /var/www/html/snipe-it/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

設定を反映します。

a2ensite snipe-it.conf
apache2ctl configtest
# Syntax OKを確認
systemctl restart apache2

設定後、前準備で指定したURLにアクセスします。

  • プレフライトチェックが走れば問題ありません。
  • let's encryptが設定済みの場合は、最初にこのドメイン用のcertbotを設定します。

これで、Lightsailに2つのWebサービスを稼働させることができました。

homebrewを用いないUbuntuへのmkcertのインストール。

前回、homebrewによるローカル証明書(mkcert)を見つけましたが、それよりも楽な方法がありましたので、メモとして残します。

actix-webでSSL/TLS通信をしてみたよ

https://qiita.com/yoshiyasu1111/items/f22a5fb640651fd22b6c

環境はUbuntu20.04です。

必要パッケージをインストール

apt install libnss3-tools

インストール

curl -s https://api.github.com/repos/FiloSottile/mkcert/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi - \
    && mv mkcert-v*-linux-amd64 mkcert \
    && chmod a+x mkcert \
    && mv mkcert /usr/local/bin/

ローカル認証局作成

 mkcert -install

これにより、管理者ユーザでもmkcertコマンドを使えるようになったのが大きいです。

既存LAMPサーバに資産管理システム『Snipe-IT』を追加。

一時期試してみた『Snipe-IT』。

このときはインストールスクリプトを用いて、

  • Apache
  • mariaDB
  • php

という状態でした。(また、このときはローカルDNSも構築していませんでした)

そこで、既にある環境にこれを追加します。

前提

  • Linux: Kubuntu 20.04
  • Apache
  • PHP
  • MySQL
  • 既に以下のWebシステムを導入済み
    1. Zabbix
    2. フォトアルバムLychee
    3. Growi

手順

以下のサイトを参考にしました。

Ubuntu 22.04にSnipe-IT資産管理ツールをインストールする方法– VITUX

(参照先では22.04ですが、その前のバージョンでもほぼこの手順通りでした。また、参照先ではmysqlなどを導入するよう指示がありましたが、既に稼働しているため飛ばしています)

PHPインストール

sudo add-apt-repository ppa:ondrej/php

sudo apt install -y php7.4-{opcache,pdo,bcmath,calendar,ctype,fileinfo,ftp,gd,intl,json,ldap,mbstring,mysqli,posix,readline,sockets,bz2,tokenizer,zip,curl,iconv,phar}
# 参照元のコマンドでを叩くとPHPバージョンを指定するよう言われたので、原稿環境のバージョン「7.4」を加えています。
インストール後、既存サービスの設定確認
sudo systemctl restart apache2

→ 再起動後、ZabbixやLycheeが正常に稼働していることを確認しました。

Snipe-IT用のDBを作成

sudo mysql -u root -p
CREATE DATABASE snipeit_db;
CREATE USER  'snipeit'@'localhost' IDENTIFIED WITH mysql_native_password BY '任意のパスワード';
GRANT ALL PRIVILEGES ON snipeit_db.* TO 'snipeit'@'localhost';
FLUSH PRIVILEGES;
exit

Snipe-ITダウンロード

cd /var/www/html
sudo git clone https://github.com/snipe/snipe-it snipe-it
cd /var/www/html/snipe-it

Snipe-IT サーバ設定

sudo cp .env.example .env
sudo vim .env
設定ファイル内容(編集内容)
APP_URL=marazion.corn.wall
APP_TIMEZONE='JST'
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_DATABASE=snipeit_db
DB_USERNAME=snipeit
DB_PASSWORD=設定したパスワード
DB_PREFIX=null
DB_DUMP_PATH='/usr/bin'
DB_CHARSET=utf8mb4
DB_COLLATION=utf8mb4_unicode_ci

Composerインストール

sudo su -
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
cd /var/www/html/snipe-it/
exit
sudo composer update --no-plugins --no-scripts
sudo composer install --no-dev --prefer-source --no-plugins --no-scripts
sudo php artisan key:generate
sudo chown -R www-data:www-data /var/www/html/snipe-it
sudo chmod -R 755 /var/www/html/snipe-it

httpd仮想ファイル作成

vi /etc/apache2/sites-available/snipe-it.conf
設定ファイル内容

ここでは

  1. ServerNameで複数のバーチャルホストを定義
  2. Rewriteで強制的にhttps通信をさせる
  3. 書式をApache2.4に合わせる

を行っています。

<VirtualHost _default_:80>
 ServerName marazion.corn.wall
#Server名は読み替えてください。(ログの場所も同じ)
 RewriteEngine On
        RewriteCond %{HTTPS} off
        RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

<VirtualHost _default_:443>
 ServerName marazion.corn.wall
 CustomLog /var/log/apache2/marazion.corn.wall/access.log combined
 ErrorLog /var/log/apache2/marazion.corn.wall/error.log
#  ログの場所を別のディレクトリにしたい場合は予め作成します
  SSLEngine on
    SSLProtocol All -SSLv2 -SSLv3  -TLSv1
     SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
    SSLCertificateFile /etc/certs/corn.wall.crt
    SSLCertificateKeyFile /etc/private/corn.wall.key
#mkcertで取得したローカル証明書と秘密鍵

  DocumentRoot /var/www/html/snipe-it/public
  <Directory /var/www/html/snipe-it/public>
    Options Indexes FollowSymLinks MultiViews
    Require all granted
</VirtualHost>                                                                                                                

設定ファイル反映

a2ensite snipe-it
apache2ctl configtest
 # → syntaxOKを確認
systemctl restart apache2.service

反映後、上記指定したドメインにアクセスすることでpre-flight checkが走り、

しっかり動くことを確認です。

ApacheによるGrowiサーバのリバースプロキシー化。

Growiの使い勝手が非常に良かったので、環境を整えました。

やりたいこと

  • 導入したGrowiサーバ、「IPアドレス:3000」ではなく「ドメイン名」でアクセスできるようにしたい。
  • 既にapacheで稼働しているLychee(フォトアルバム)やZabbixは平行稼働させたい。
  • ローカルとは言えSSL通信を行いたい。

やったこと

  1. hostファイル書き換え
  2. ローカルDNS登録
    1. これに即したSSL証明書をmkcertsで作成
  3. Apacheによるリバースプロキシー有効化
  4. 設定ファイル差し替え
  5. 動作確認

前提

以下の環境を導入済みです。

  • Kubuntu Linux 20.04
  • Apache 2.4
  • Growi 5.1

手順

※ディレクトリ、ドメインなどは個人の環境に読み替えてください。

host書き換え

sudo vi /etc/hosts
追記内容
127.0.0.1       localhost
127.0.0.1       paddington.corn.wall   paddington
# ※Ubuntuの環境では「127.0.1.1」となっていましたので、localhostと同じにします
127.0.0.1       chisataki.lyco.reco     chisataki
# ※別ドメインで通信を行いたいので、この行を追加しました

DNS登録

今回、新たに「lyco.reco」というローカルドメインを作成して「chisataki.lyco.reco」で名前解決できるようにしました。

参照:

mkcertsによるローカルSSL証明書発行

mkcertsを導入したサーバで、以下を発行します。

 mkcert -key-file lyco.reco.key.202208 -cert-file lyco.reco.cert.202208 lyco.reco chisataki.lyco.reco "*.lyco.reco"

この時に発行した証明書と秘密鍵をGrowiサーバの以下に格納します。

  • /etc/certs → 証明書
  • /etc/private → 秘密鍵

参照:

秘密鍵のシンボリックリンク化

証明書と秘密鍵を格納したサーバで

cd /etc/cets
sudo ln -s lyco.reco.cert.202208 lyco.reco.cert
​
cd /etc/private
sudo ln -s lyco.reco.key.202208 lyco.reco.key
# mkcertsの証明書は有効期限が3ヶ月と短いため、更新時にはリンクの貼り替えだけで済むようにあらかじめシンボリックリンクを設定します

としておきます。

リバースプロキシー有効化

sudo a2enmod proxy proxy_http proxy_wstunnel
sudo systemctl restart apache2.service

ログ格納ディレクトリ作成

sudo mkdir /var/log/apache/chisataki.lyco.reco
sudo chown -R www-data:www-data /var/log/apache/chisataki.lyco.reco

リバースプロキシー用apache設定ファイル作成

参考:

https://docs.growi.org/ja/admin-guide/getting-started/ubuntu-server.html

sudo vi /etc/apache2/sites-available/growi.conf
設定ファイル内容

※ServerNameやログなどは読み替えてください。

<VirtualHost _default_:80>
ServerName chisataki.lyco.reco
RewriteEngine On
      RewriteCond %{HTTPS} off
      RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

<VirtualHost _default_:443>
ServerName chisataki.lyco.reco
CustomLog /var/log/apache2/chisataki.lyco.reco/access.log combined
ErrorLog /var/log/apache2/chisataki.lyco.reco/error.log
SSLEngine on
  SSLProtocol All -SSLv2 -SSLv3 -TLSv1
    SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
  SSLCertificateFile /etc/certs/lyco.reco.crt
  SSLCertificateKeyFile /etc/private/lyco.reco.key

  RewriteEngine On
  RewriteCond %{HTTP:Upgrade} websocket [NC]
  RewriteCond %{REQUEST_URI} ^/socket.io           [NC]
  RewriteCond %{QUERY_STRING} transport=websocket   [NC]
  RewriteRule /(.*) ws://localhost:3000/$1 [P,L]

  ProxyPass / http://localhost:3000/
  ProxyPassReverse / http://localhost:3000/

</VirtualHost>

設定ファイル有効化

sudo a2ensite growi

設定ファイル反映

sudo apache2ctl configtest
 # → syntax OK を確認します
sudo systemctl restart apache2.service

設定後、

「http://[ドメイン]」

にアクセスすることで

  • https通信へのリダイレクト
  • 指定したディレクトリにアクセスログが流れること

を確認しました。

Page 21 of 25

Powered by WordPress & Theme by Anders Norén