LiteSpeedの初期設定を行います。
LiteSpeed Web Serverとは
第4のウェブサーバーと呼ばれる、nginxよりも更に効率的なウェブサーバーです。
高負荷時にnginxよりも高いパフォーマンスを発揮出来るようで、一部の共用サーバーではApacheやnginxの代わりにLiteSpeedを導入して「高速」を謳っている所も在ります。
環境
今回は、OpenLiteSpeedとLSPHPを使用しています。
- OpenLiteSpeed 1.6.7
- LSPHP 7.3
管理者ユーザーの作成
まずは管理者ユーザーを作成します。このユーザーを使って、管理コンソールに入れるようになります。LiteSpeedには管理者ユーザー作成用のシェルスクリプトが用意されているので、実行して従うだけです。
# (Bash)
$ sudo /usr/local/lsws/admin/misc/admpass.sh
[sudo] password for ...:
Please specify the user name of administrator.
This is the user name required to login the administration Web interface.
User name [admin]: ...
Please specify the administrator's password.
This is the password required to login the administration Web interface.
Password:
Retype password:
Administrator's username/password is updated successfully!
起動状態の確認
ユーザー作成が終わったら、ウェブサーバーの起動状態を確認します。
# (Bash)
$ sudo /usr/local/lsws/bin/lswsctrl status
litespeed is running with PID 10388.
このように、実行中のPIDが表示されたら既に起動されています。そうでない場合は以下のコマンドを実行して起動します。
# (Bash)
$ sudo /usr/local/lsws/bin/lswsctrl start
ページにアクセスしてみる
ここからは私の独自ドメインでURLを表記するので、適宜自分の環境で読み替えてください。例えば、ローカル環境ならhttp://lsws.devmem.info
はhttp://localhost
みたいに。
デフォルトでは、http://lsws.devmem.info:8088
にページが公開されています。
事前にファイアウォールの設定をしてポートを開放しているので、早速アクセスしてみます。
アクセス出来ました。次は、管理コンソールにアクセスしてみます。
管理コンソールは、https://lsws.devmem.info:7080
に在ります。デフォルトでHTTPSで接続するようになっていますが、証明書が無いので危険な状態と表示されます。Chromeはセキュリティが厳しいのでアクセスすら出来ませんでした。なので、Edgeを使って接続します。
管理画面へのログインページが表示されました。ここに、先ほど作ったユーザーでログインします。
まずログインすると、ダッシュボードが表示されます。ここにアクセス統計情報等が表示されるようです。
WordPressの構築
デフォルトページも管理コンソールもログイン出来たのでここで終わりにしても良いのですが、せっかくLSPHPも導入しているのでWordPressを構築します。
Virtual Hostの設定
管理コンソール左のメニューから、「Virtual Hosts」を開いてください。
デフォルトでは、先ほど見たデフォルトページにアクセスするためのVirtual Hostが定義されています。
ここに別のVirtual Hostを追加する事で、複数サイトを1つのウェブサーバーで運営する事が可能になります。
リストの見出しの右にある追加ボタン(プラスマーク)から、新規にVirtual Hostを追加します。
今はWordPressを構築しているので、Virtual Host Name
はシンプルに「WordPress」で、Virtual Host Root
は適当に/usr/local/lsws/vhosts/WordPress
になるように設定しました。
注意点としては、Virtual Host Root
は外部公開用のドキュメントルートではなくVirtual Hostのルートです。ここに外部公開用のドキュメントルートとしてhtml
ディレクトリやログ保存用としてlog
ディレクトリを作成します。
Config File
に関しては、$SERVER_ROOT/conf/vhosts/$VH_NAME/vhconf.conf
に設定するのが推奨されています。
External App Set UID Mode
はServer UID
にします。これは、wp-config.php
等を変更する時に権限の問題が起きないようにしてくれます。
見出し右の保存ボタンを押しましょう。
保存ボタンを押すと、設定ファイルが存在しない旨のエラーが表示されるので、エラー文の最後のCLICK TO CREATE
を押して作成してもらいます。
再度保存ボタンを押すと、Virtual Hostsの一覧に戻って、WordPress
というVirtual Hostが追加されている事が確認出来ます。
次に、Virtual Hostのドキュメントルートの設定を行います。
追加したWordPress
の設定を開いて、General
タブに進みます。
見出し右の編集ボタンをクリックしてください。
Document Root
には$VH_ROOT/html
が推奨されているようです。編集し終えたら見出し右の保存ボタンから保存してください。
次に、Rewrite
タブを開いて、Auto Load from .htaccess
をYes
に変更します。
WordPressはページのURLを.htaccessで制御しているので、この設定を行わないとトップページと管理ページ以外のページが404エラーになる状態になります。
Listenerの設定
リスナーは、アクセスされたURLに応じて、表示するページを分ける事が出来ます。
管理コンソール左のメニューから、Listeners
を開いてください。
デフォルトではDefault
という名のListenerが1つだけ定義されているはずです。
画面上部ではListenerに関する設定が、画面下部ではこのListenerに紐づくVirtual Hostと対応するドメインが定義されています。
Default
ではポート8088番のアクセスをドメインに関係無くExample
に振り分けるように定義されています。
ではまず、ポート8088番ではなく、ポート80番で接続するようにします。見出し右の編集ボタンを押して編集します。例の如く、ポート開放等は既に行っています。
編集が終わったら、次は画面下部にあったVirtual Host Mappings
の設定です。Example
は不要なので、Example
の設定を編集します。
http://lsws.devmem.info
でのアクセスで構築中のWordPressを表示したいので、このように設定します。ワイルドカードにも対応していて、*.devmem.info
のような事も出来ます。
編集が終わったら保存してください。保存が終わったら、管理コンソール右上にあるLSWS PID
の表示の隣に在る、Graceful Restart
ボタンからLiteSpeedを再起動します。
WordPressのダウンロードと配置
先ほど設定したVirtual Host Root
ディレクトリを作成します。
# (Bash)
$ sudo mkdir /usr/local/lsws/vhosts/WordPress
作成したら、WordPressをダウンロードして、設定したDocument Root
ディレクトリに合うようにリネームします。また、WordPressからファイルの書き換えが生じた場合にDocument Root
ディレクトリの所有者とファイルの所有者が異なると追加設定が必要になるので修正します。デフォルトではユーザーnobody
、グループnogroup
として書き換えが実行されるようなので、chown -R
で再帰的に変更します。
# (Bash)
# Virtual Host Rootへ移動
cd /usr/local/lsws/vhosts/WordPress
# WordPressのダウンロード sudo curl -o - https://ja.wordpress.org/latest-ja.tar.gz | sudo tar xzvf -
# リネーム
sudo mv wordpress html
# 所有権の設定 sudo chown -R nobody:nogroup WordPress/
これで、WordPressの配置が完了しました。
確認する
では、http://lsws.devmem.info
にアクセスしてみます。
無事に、お馴染みのWordPressの初期設定画面が表示されました。
まとめ
第4のウェブサーバーと呼ばれるLiteSpeed Web ServerでWordPressを構築しました。
今まで、ウェブサーバーは共用サーバーに備えついているApacheやnginxを使っていたので、ウェブサーバー自体の構築は初めてしましたが、管理コンソールのおかげで設定が見易くて助かりました。
nginxと比較してどうかは分かりませんが、アクセスはサクサクなので満足しています。