GCP で構築した OpenLiteSpeed × WordPress を使いやすくするために次の設定を行います。
・最新ソフトウェアにアップロード
・WordPress アップデート上限の変更
・SWAP 領域の作成
・phpMyAdmin へのアクセス禁止
・ドメインへのリダイレクト設定
これらの設定は必須ではないため、設定を知なくても大丈夫です。
1.ソフトウェアをアップデートする
使用している OpenLiteSpeed Web サーバーの各ソフトウェアを最新バージョンにします。
アップグレードできる項目を確認するために、次のコマンドを実行します。
apt list --upgradable
次のコマンドを実行して、パッケージに含まれているソフトウェアと OpenLiteSpeed を最新バージョンにアップデートまたはアップグレードします。
sudo apt-get update -y && sudo apt-get upgrade -y
不要なパッケージを削除してストレージの使用量を減らすために次のコマンドを実行します。
sudo apt-get autoremove
以上で OpenLiteSpeed Web Server で WordPress を利用することができます。
2.アップロード上限を変更する
WordPress のアップロード上限は 256 MB でデフォルト設定されています。
大きめの画像や データインポート などの大容量の情報を扱えるようにアップロード上限のサイズを変更します。
VM インスタンスへ SSH 接続を行い、ターミナルを起動します。
php.ini ファイルを編集するために、次のコマンドを実行します
※ この時は LiteSpeed Web サーバー 8.1 ですが、別バージョンの場合は数字を適切なバージョンの数字に変更してください。
sudo vim /usr/local/lsws/lsphp81/etc/php/8.1/litespeed/php.ini
アップロードサイズを変更するために次の上限パラメータの数値に適当な数値に変更します。
- upload_max_filesize = 256M
- post_max_size = 256M
ノーマルモード時に「/」を入力し、検索モードに [upload_max_filesize] を検索して該当箇所を見つけ出してから Enter キーを押します。
[a] キーを押して入力モードに切り替え、アップロードの数値を変更します。
[esc] キーを押して入力モードを解除します。
同じように「post_max_size」も行います。
ノーマル時に [/] キーを押して検索モードに切り替えて [post_max_size] と入力して該当するコードを見つけ出して [Enter] キーを押します。
[a] キーを押して入力モードに切り替え、アップロードの数値を変更します。
[esc] キーを押して入力モードを解除し、ノーマルモードに戻します。
ファイルを保存して閉じるために、ノーマルモード時に「:wp」 と入力します。
LiteSpeed Web Server を再起動するために次のコマンドを実行します。
再起動することで変更した php.ini ファイルを適用することができます。
sudo pkill lsphp
次のコマンドを実行して、ターミナルを閉じます。
exit
WordPress 管理ダッシュボードにアクセスし、アップロードサイズが変更されていることを確認します。
以上で WordPress アップロード上限を変更することができました。
3.SWAP 領域を設定する
3-1.SWAP メモリーを作成する
LiteSpeed Web Serve では、最初から SWAP 領域が用意さていません。
高性能のマシンであれば問題はありませんが 低品質な VM ではメモリ不足で頻繁に落ちる可能性があります。
HDD に SWAP 領域を用意して擬似的にメモリーを増強します。
※ 高性能の VM インスタンス タイプを利用している場合はスキップしてください。
VM インスタンスに SSH 接続を行い、ターミナルを起動します。
現在のメモリ状況の確認と SWAP 領域を確認するために、次のコマンドを実行します。
free -h -t
SWAP 領域用として swapfile ファイルを /tmp/lshttpd/ に作成するために、次のコマンドを実行します。
ここでは SWAP 領域を 4G にしています。
※OpenLiteSpeed Web サーバーでは「/tmp/lshttpd/swap」がスワップディレクトリとして指定されています。
sudo fallocate -l 4G /tmp/lshttpd/swapfile
作成したファイルの権限を所有者のみの読み書きに変更するために、次のコマンドを実行します。
sudo chmod 600 /tmp/lshttpd/swapfile
作成した作成した swapfile ファイルを SWAP 領域として指定するために、次のコマンドを実行します。
sudo mkswap /tmp/lshttpd/swapfile
swapfile ファイルを SWAP 領域を有効にするために、次のコマンドを実行します。
sudo swapon /tmp/lshttpd/swapfile
この状態では VM インスタントが再起動する度に設定リセットされてしまうため、SWAP が自動マウントするように fstab に追記します。
fstab ファイル内に「/tmp/lshttpd/swapfile none swap sw 0 0」を追記するために、次のコマンドを実行します。
echo 'a none swap sw 0 0' | sudo tee -a /etc/fstab
SWAP の使用状況を確認するために、次のコマンドを実行します。
sudo swap on --show
以上で SWAP 領域を作成することができました。
3-2.スワップ領域を削除する
作成した SWAP 領域を削除します。
動いている SWAPファイルを停止するために、次のコマンドを実行します。
sudo swapoff -v /tmp/lshttpd/swapfile
fstab ファイルに記載した「/tmp/lshttpd/swapfile none swap sw 0 0」を削除するために、次のコマンドを実行します。
sudo vim /etc/fstab
[a] キーを押して入力モードに切り替えて対象の文を削除します。
[esc] キーを押してノーマルモードに戻し、[:wq] と入力してファイルを保存して閉じます。
SAWP ファイルを削除するために、次のコマンドを実行します。
sudo rm /tmp/lshttpd/swapfile
スワップ領域が削除されたことを確認するために、次のコマンドを実行します。
free -h -t
以上で SWAP ファイルの削除になります。
4.phpMyAdmin へのアクセスを禁止する
OpenLiteSpeed のデフォルト設定では「https:// {IP アドレス}/phpmyadmin」で phpMyAdmin へのアクセスができる状態になっています。
phpMyAdminを保護 するために LiteSpeed のコントロールパネルで phpMyAdmin をアクセス禁止(非表示)に変更します。
VM インスタンスに SSH 接続し、ターミナルを表示させます。
ポート 7080 へのアクセス許可するために、次のコマンドを実行します。
sudo ufw allow 7080
LSWS のコントロールパネルのユーザー名とパスワードを取得するために、次のコマンドを実行します。
cat /home/ubuntu/.litespeed_password
「http://{IP アドレス}:7080」で LiteSpeed の管理画面にアクセスし、取得したユーザー名とパスワードを入力してログインします。
操作しやすいように上部バーの右側の English を日本語に変更します。
左パネルから [バーチャルホスト]を選択し、[wordpress] をクリックします。
[コンテキスト] タブを選択し、[編集] をクリックします。
[アクセス可能] 項目を「いいえ」に変更し、静的コンテキストの定義の [保存] をクリックします
変更を適用するには OpenLiteSpeed を再起動しなければなりません。
上部 右上の「緩やかな再起動」をクリックし、再起動を実行します。
アクセス禁止 の状態で phpMyAdmin にアクセスすると「403 Forbidden」と表示されます。
ポート 7080 へのアクセス接続を閉じてるために、次のコマンドを実行します。
実行すると OpenLiteSpeed の管理画面にアクセスできなくなります。。
sudo ufw delete allow 7080
以上で phpMyAdmin をアクセス禁止に変更が完了となります。
補足:phpMyAdmin へのアクセス制限
上記では phpMyAdmin 自体へのアクセス不可能にする設定でしたが、許可した IP アドレスのみをアクセス可能でそれ以外はアクセスができないようにする設定もあります。
同じようにLiteSpeed のコントロールパネル > バーチャルホスト > wordpress > コンテキスト > phpmyadmin に移動し、コンテキスト リストを編集します。
「アクセスが許可されました」にアクセスを許可するIP アドレス を設定し、「アクセスが拒否されました 」に* で設定します。
サブネットを利用する場合は IP アドレス/サブネット で設定できます。
この変更を適用するために「緩やかな再起動」を実行し、変更を適用させます。
5.リダイレクトを設定する
5-1.IP アドレスをドメインにリダイレクト
IP アドレス には何も設定されていないので IP アドレスで検索するとそのままIP アドレスが表示されます。
「IP アドレス」「ドメイン」が同じサイトでも別サイトとしてインデックスされるので IP アドレスをドメインへのリダイレクトするように設定します。
LiteSpeed の管理画面にアクセスし、バーチャル ホストから「wordpress」をクリックします。
「Rewrite」タブを選択し、Rewrite ルールを編集します。
下記のコードをコピーし、IP アドレスとドメインを適当に変更して、保存を行います。
※ HTTP を HTTPS へのリダイレクト設定をすでに設定済みのため、http://35.240.201.78 でのアクセスはhttps://http://vietnam.4watcher365.dev/ へとリダイレクトされます。
RewriteCond %{HTTP_HOST} ^35\.240\.201\.78$
RewriteRule ^(.*)$ http://vietnam.4watcher365.dev/$1 [L,R=301]
※ 「. (ドット/ピリオド)」は正規表現で任意の1文字という意味を持っているため、「\(バックスラッシュ)」を付けることでURLのピリオドと認識させます。
この変更を適用するために「緩やかな再起動」を実行し、変更を適用させます。
以上で IP アドレスをドメインへのリダイレクト設定となります。
5-2.ルートドメイン または www ドメインをサブ ドメインへ
ルート ドメイン または www ドメインからのアクセスをサブ ドメインへリダイレクトさせるには、次の記述になります。
※ [OR] をつけていない場合、[AND] になり 両方が一致したときとなるため、ルート または www からのリダイレクトが起動しない。
RewriteCond %{HTTP_HOST} ^4watcher365\.dev$ [OR]
RewriteCond %{HTTP_HOST} ^www\.4watcher365\.dev$
RewriteRule (.*)$ https://vietnam.4watcher365.dev/$1 [R=301,L]
LSWS 管理画面を閉じた後は次のコマンドを実行し、ポート 7080への接続を閉じて OpenLiteSpeed の管理画面にアクセスできないようにします。
sudo ufw delete allow 7080
Leave a Reply
View Comments