この記事は最後に更新してから1年以上経過しています。

さくらのVPSでKUSANAGI#3

説明

今回は「前回」の続き。http(80番)をクローズ、そのほかに行った調整作業について整理する。

http(80番)をクルーズする前に

KUSANAGIはプロビジョンの段階でサーバー証明書を取得すればはじめからhttpsでのサイトアクセスが可能である。今回はhttp側でWordPressをインストールしてしまったので、「WordPress アドレス (URL)」と「サイトアドレス (URL)」はどちらも「http」になっている。httpとhttpsの両方アクセス可能な状態からhttpsのみアクセス可能に切り替える場合は「WordPress アドレス (URL)」と「サイトアドレス (URL)」を「https」に変更すべきなのだが、せっかくhttpでのアクセスが可能なので、サーバー内からだけでなく、開発環境のパソコンからabコマンドを実行してみようと思う(開発環境で使用しているWindows版のabコマンドがhttpsをサポートしていないため)。

サーバーの環境はすべて「NGINX+HHVM(fcache on)」で実行したabコマンドは次の通り。

ab -n 10000 -c 300 http:/指定したドメイン名/

このコマンドをサーバー内と開発環境のパソコンから前回と同じ内容で実行した結果が次の表になる。

Web環境最短[秒]最長[秒]上下カット平均[秒]
https(サーバー内:参考)9.59212.77811.202
http(サーバー内)1.0901.6151.432
http(開発環境)710.546813.241749.317

※さくらのVPSは運用開始時が「お試し期間」の場合に「帯域制限」されており、「お試し期間」を解除して1~2時間で解除される。

「http(サーバー内)」と「http(開発環境)」の違いはサーバーと開発環境との通信の影響となる。「http(開発環境)」の値は、httpとはいえ1時間に約5万リクエストをさばくというものなので一般的なサイトであれば十分な性能といえるのではないだろうか。参考値の「https(サーバー内)」と「http(サーバー内)」の違いは通信内容の復号・暗号化処理はそれなりに重いようだ。

http(80番)をクルーズ

管理者ページの「設定」-「一般」ページにアクセスして「WordPress アドレス (URL)」と「サイトアドレス (URL)」を「https」に変更し、「変更を保存」ボタンを押す。この時、弊社プラグイン「Login rebuilder」が有効な状態ではログインページへのリダイレクトに失敗するので、アドレスバーに設定済みのログインページURLを指定してログインし直す。念のため、「設定」-「一般」ページにアクセスして「WordPress アドレス (URL)」と「サイトアドレス (URL)」が変更されていることを確認する。

各URLが変更されていることが確認できたら、http(80番)をクローズする。CentOS 7の場合は「firewall-cmd」コマンドでポートの開け閉めを切り替えでき、「http(80番)」をクローズする場合は次に示す2つのコマンドを実行する。

# firewall-cmd --remove-service=http --permanent
# firewall-cmd --reload

コマンドを実行したら、ブラウザで「http」を指定してサイトにアクセスし、サイトが表示されないことを確認する。

そのほかの設定

KUSANAGIは基本的なWebサーバー利用に必要な設定をほとんど行ってくれるが、いくつか調整しておきたいことがあったのでメモとして残しておく。

1つ目は、/etc/sysconfig/networkファイルに「HOSTNAME」を追加すること。

# vi /etc/sysconfig/network
HOSTNAME=ドメイン名

この対応は「reboot」コマンドでサーバーを再起動する必要があるので、タイミングは要注意。

# reboot

2つ目は、MangoDB(MySQL)のtestデータベース(スキーマ)。これは文字通りテスト用のデータベースなので削除したほうがよい。

# mysql -u root -p
MariaDB [mysql]> drop database test;

とりあえず気になったのはこんなところ。あとkusanagiユーザーの状態は今のままでいいのか悩ましい。


最終更新 : 2018年05月27日 10:43

お勧め

add_shortcode(2018年5月27日 更新)

void add_shortcode( string $tag, mixed $func )
ショートコード(独自タグ)を追加する。ショートコードは、投稿記事内でテキスト内容がない[tag]や、テキストを内包する[tag]テキスト[/tag]の書式で使用できる独自タグのこと。標準の状態では、 the_content関数によって表示する直前のフィルター処理内でパラメータ$funcで指定した関数・メソッドが実行される。

get_user_setting(2022年1月31日 更新)

mixed get_user_setting( string $name [ , string $default = false ] )
ユーザーインターフェイス設定を取得する。

have_posts(2018年5月27日 更新)

bool have_posts( )
次の投稿データが存在するかを調べる。

in_category(2018年5月27日 更新)

bool in_category( mixed $category [ , mixed $post = null ] )
投稿情報が指定したカテゴリーに属しているか調べる。

add_feed(2024年6月24日 更新)

string add_feed( string $feedname, callable $callback )
フィードを追加する。