はじめに
Lightsailを使ってブログサーバーを立ち上げました。立ち上げて3カ月が過ぎましたが、その中でぜひ共有しておいた方が良いと思ったツールをご紹介します。
初回接続
lightsail振出時に確認したパスワードが必要です。コンソールで確認して「user」にログインしてください。そして早々にuserアカウントは無効にする事をお勧めします。
userアカウントは使わない
デフォルトのユーザー「user」が残っていると攻撃対象になってしまいます。
まずは新しい管理者アカウントを作成して、ログイン確認を終えたら早々にuserアカウントは無効にしましょう。
あとで設定する事も可能ですが、一番最初に行っておいた方が精神的にも安心です。
bitnamiユーザーはssh接続で構成されているので、秘密鍵の管理をちゃんとしていれば安心です。
テーマの導入
ブログで記事を発信する上でテーマはとても重要だと思いました。同じ手間をかけるなら記事に使いたいです。また、ある程度書き進めた上でテーマを変えるのは結構大変だったので、本格的にWordPressを使っていくのであれば早めに作り込まれたテーマを導入することをお勧めします。私は「SWELL」を導入しました。表現したい事はほとんど用意されていますし、開発者が日本人との事で、日本語サポートがあるのはとても助かります。
Tips:カテゴリーの準備
記事を限られた一般メンバーでのみ利用したいケースがあると思います。そういった事象を見越してSWELLの設定を行っておくと便利に使えそうです。私は以下の設定をしています。
記事カテゴリーのルートを作成しておく
ヘッダー直下に、「記事の見出し」を自動スライド表示する領域があります。こちらは初回設定では全ての記事を表示する設定となっています。ですのでアクセス制御したい記事を考慮して、ルートとなる記事カテゴリーを設定しておくと管理しやすいと思います、私は以下のルートカテゴリーを用意して記事作成をしています。
- 公開全記事のカテゴリー:「article」
- 非公開記事のカテゴリー:「private」
記事のフィードについて
記事を発行したときは公開/非公開に関わらずフィードされてしまう事を考慮しておくと良いです。記事のフィード自体は止めるのが難しい様なので、ルートのカテゴリーで分けられている事でリスクを少なくする事ができます。完全に隠す事はできないので「アクセス権限の設定」は必須です。それでも記事の見出しに自動登録されない効果は大きいです。あくまでも「とりあえずやっておくといいよ」的なTipsですが、参考になれば幸いです。
外観/カスタマイズ/トップページ/記事スライダー:ピックアップ対象のカテゴリーID
カテゴリーが用意できたらSWELL側の設定を行っておくとスマートです。記事スライダーはトップページのヘッダー下で流れている特選記事の事です。デフォルトの設定では記事を投稿するとそのままスライダーにも現れます。見てもらいたいのですから当たり前ですよね。非公開を考えなければ当然の仕様です。
ですが、一般には非公開な記事を作った際にこの設定をしていないとスライダーに表示されてしまいます。記事スライダーは一つだけカテゴリーを設定することができるので、articleカテゴリーのIDを設定しておく事で一般向け非公開の記事を少しだけ安心して投稿できます。(^^;
外観/カスタマイズ/記事一覧リスト:除外したいカテゴリーのID
こちらはトップページの記事一覧に関する設定です。こちらの設定は一覧に入れたくないカテゴリーを設定します。ですのでprivateカテゴリーのIDを設定しておく事で投稿時の安心が確保されます。(^^; こちらは複数のカテゴリーIDを設定する事ができます。
一部ユーザーのみ公開記事自体の設定
記事自体にも少し工夫が必要です。先の説明の通り、WordPressは非公開設定であっても記事のフィードは行います。フィードを止めることも可能ですがメンテナンスなどを考えるとあまり得策とは思えません。フィード前提での運用としておく必要があります。ですから私は、一部ユーザー向け記事については必ずパスワード付きで投稿する運用としました。パスワードは大嫌いなんですけどね。将来的にAKIが普及したらこういったことも自在に制御できそうですが、それはまた別の話なので…ははは。
プラグイン(更新:2023/11/28)
続いて導入したプラグインをご紹介します。安全に運用したいのでSWELLテーマとの相性が良さそうなプラグインを選びました。アルファベット順での掲載です。環境構築の参考になれば幸いです。
Akismet Anti-spam: Spam Protection (v.5.3)
スパムコメントを自動で削除してくれるプラグインです。デフォルトで導入されているプラグインで個人の場合は無料で利用できます。個人利用の申請を行ってAPIキーを取得する必要があります。今は未だコメントを有効にしていませんので初期設定のみの状態で運用しています。
BEAF – Ultimate Before After Image Slider & Gallery (v.4.4.7)
画像比較をビジュアルに行ってくれるプラグインです。最新のWordPressに対応しています。
Converter for Media (v.5.11.4)
サイトの画像データのフォーマットを自動でWebPフォーマットに変換し、サイトのパフォーマンスを改善する事ができます。WebPに対応していないブラウザでは、自動でWebP変換前の画像フォーマットで対応しますので安心です。すでに登録済みの画像データも一括でWebP対応する事も可能です。もちろん変換前の画像データもちゃんと残してくれていますので安心です。
lightsail導入時の覚書
私の環境では単純にプラグインを導入しただけではエラーとなりました。メッセージの抜粋は以下の通りです。
Apache サーバを使用している場合、この問題は通常 Apache の設定におけるバーチャルホストの設定に関連しています。VirtualHost の関連する .conf ファイルの<Directory>… </Directory>で AllowOverride None の値を AllowOverride All で置き換えてください。 このような場合は、サーバー管理者にご相談ください。
AllowOverrideは「.htaccessの読み込み設定」に関するプロパティなので、wordpress用に作成されたvhost設定ファイルをエディタで開いてAllowOverride None の値を AllowOverride Allに変更し、Apache再起動し問題が解決された事を確認しました。
# VirtualHostのhttp設定
sudo nano /opt/bitnami/apache/conf/vhosts/wordpress-vhost.conf
# VirtualHostのhttps設定
sudo nano /opt/bitnami/apache/conf/vhosts/wordpress-https-vhost.conf
# ちなみに"/opt/bitnami/apache/conf/vhosts/htaccess/wordpress-htaccess.conf"を修正しても有効ではありませんでした。
以下、vhost設定でのAllowOverrideに関する説明の抜粋です。
- AllowOverride ディレクティブ
- None に設定すると「.htaccess」 ファイルは完全に無視されます
- All に設定されている時には「.htaccess」 という コンテキスト を持つ 全てのディレクティブが利用できます
Apacheは複雑で奥深いので、ちょっとでもハマると大変です。今回は簡単に解決できて助かりました。設定ファイルの情報については「Bitmaniの環境あれこれ」を参照ください。
Export media with selected content (v.2.1.4)
特定の記事や固定ページだけのエクスポート/インポートを支援するプラグインです。WordPress標準のエクスポートでは大ざっぱなエクスポートしかできないので、このExport media with selected contentプラグインを使ってエクスポートする事をお勧めします。
GTranslate (v.3.0.5)
ブログサイトを多言語対応にしてくれるプラグインです。作成したブログサイトを最小限の修正だけで多言語対応することができます。Google翻訳を使って自動翻訳する仕組みなので、翻訳品質はGoogle翻訳に準じます。有償にすると、より良い翻訳が選べるとのことです。
当面は無償で使う方針ですので、日本語の校正に注力していきます。私の書く文章はくどい文章になりがちなので、注意しなければ!
Highlighting Code Block (v.2.0.1)
ソースコードを「色・行間・フォント・インデント」などで、装飾・強調表示してくれるプラグインです。開発言語のシンタックスに合わせた装飾が出来るので導入しています。
IndexNow (v.1.0.1)
記事の掲載や更新を検索エンジンに通知してくれるツールです
Media Library Folders (v.8.1.6)
メディアライブラリに仮想フォルダを追加して、ファイルの整理ができるようになります。ドラッグ&ドロップ操作でファイルをフォルダ分けして整理できます。仮想的なフォルダなので実際のメディアファイルには影響ありません。
Microsoft Clarity (v.0.9.3)
ユーザーがウェブサイト上でどのように行動しているかを分析するツールです。ほぼリアルタイムで分析データを見る事ができます。Google アナリティクスと連携してよい深くアクセス解析もできる様なので、使い方を勉強している最中です。
導入にはMicrosoftアカウントが必要です。
PS Auto Sitemap (v.1.1.9)
記事の一覧をサイトマップページとして作成し自動更新してくれるプラグインです。SEO対策ではなくてユーザビリティーのために組み込んでいます。自動でサイトマップ情報を更新してくれるので大変助かっています。
Really Simple SSL (v.7.2.0)
インストールするだけで簡単にWordPressにSSLが導入できるプラグインです。CUIコンソールを使わなくてもWordPressのSSL化ができるのでおすすめです。ドメイン獲得とサイト証明書の導入は必ず事前に完了しておく必要があります。サイト証明書の導入が完了していれば、プラグインを有効にするとSSLが導入されHTTPS接続が可能になります。
導入後はプラグインの指示に従って設定をしてください。私は要求項目全てをチェックしましたが特に問題はありません。
Safe SVG (v.2.2.2)
SVGには脆弱性が指摘されていてWordPress標準ではサポートされていません。本ツールを導入する事で、脆弱性確認しながらメディア ライブラリに登録し使える様にしてくれるツールです。
SEO SIMPLE PACK (v.3.2.1)
SEO対策に必要なmeta情報などを編集するプラグインです。SWELLの開発者である「了さん」もプラグインの設計に関わっているとの事なので、私の構築環境にばベストなツールだと思います。SEO対策などは別途記事を作成していければと考えています。
Site Kit by Google (v.1.114.0)
Googleの各種ツールとブログを連携させるためのGoogle公式ツールです。私のサイトで連携しているGoogleツールは以下の通りです。知見がたまったら記事を作成していきたいと考えています。
- Googleアナリティクス
- Googleサーチコンソール
- ページスピードインサイト
- Googleアドセンス
UpdraftPlus – Backup/Restore (v.1.23.13)
WordPressの登録データ一式をバックアップするツールです。転ばぬ先の杖として、絶対に導入してバックアップする事をお勧めします。将来的にはPro版を購入して自動バックアップしたいです。
復元確認
Lightsailの日時バックアップと合わせて体制だけは(ほぼ)万全です。(^^; 早めに復元検証を行いたいです。
自宅のローカル環境に WordPress環境を作って、バックアップ情報から復元する検証を行ってみます。そこで得られた成果を記事にする予定です。
WP-Optimize – Clean, Compress, Cache (v.3.2.22)
WP Revisions Controlを無効にしましたので、代替えとして導入しました。UpdraftPlusと連携してWordPressのクリーンアップを行ってくれるツールです。非力なサーバーですのでこのような最適化ツールは非常に助かります。サーバー運営がペイできるようになったら、ぜひともプレミアム販にアップグレードしたいです。
WPForms Lite (v.1.8.4.1)
お問い合わせフォーム用のプラグインです。作成したフォームにメッセージを入力すると、登録したeメールアドレスへメールとして送られてきます。
WP Mail SMTP (v.3.10.0)
gmailなど外部のSMTPサーバーから確認メールを送信す事ができる様になるツールです。適切なSMTPサーバーを通してメールを送信する事で「迷惑メール」として判断される事が回避できます。私はGoogleのメールサーバーを利用しています。
Amazon Litesailのメール環境構築
WP Mail SMTPを使うと簡単に利用できるのでgmailをメールサーバーに使っています。今後のコストの取りまとめも考えてAWSだけで完結しておいた方が良いかなとも考えています。
Amazon SESはかなり設定にクセがありそうなので、おいおい調整していきます。うまく構築できた際には本記事を更新してノウハウを共有いたします。
XML Sitemap & Google News (v.5.3.6)
XMLサイトマップを自動で生成してくれるツールです。先の「PS Auto Sitemap」とは異なり、SEQサービス用にXML形式のサイトマップデータを生成します。
XO Security (v.3.7.0)
ログイン関連のセキュリティを強化するためのツールです。標準設定だとあまりよろしくないので、ぜひ導入をお勧めします。
Yoast Duplicate Post (v.4.5)
投稿や固定ページを複製や書き換え&再公開することができます。
Bitmaniの環境あれこれ
AWS LightsailのWordPressはBitnamiで構築されていおり、一般的なWordPressとはパス情報が少し違います。情報が散らからない様に記事を分けましたので、以下の記事をご参考ください。
今の状況(〜2023/1)
構築してから4カ月が過ぎました。AKIのコンテンツも蓄積されてきましたので一度リソースの確認をします。
ストレージの使用量
現在のストレージ利用状況は以下のとおりです。
hoge:~$ df -m
Filesystem 1M-blocks Used Available Use% Mounted on
udev 226 0 226 0% /dev
tmpfs 48 1 47 2% /run
/dev/xvda1 19926 4646 14370 25% /
tmpfs 237 0 237 0% /dev/shm
tmpfs 5 0 5 0% /run/lock
/dev/loop2 117 117 0 100% /snap/core/14447
/dev/loop3 64 64 0 100% /snap/core20/1738
/dev/loop4 64 64 0 100% /snap/core20/1778
/dev/loop5 45 45 0 100% /snap/certbot/2618
/dev/loop0 17 17 0 100% /snap/certbot-dns-route53/2005
/dev/loop1 117 117 0 100% /snap/core/14399
/dev/loop6 45 45 0 100% /snap/certbot/2582
/dev/xvda15 124 11 114 9% /boot/efi
tmpfs 48 1 48 1% /run/user/1000
hoge:~$
全然問題ないですね。
CPU利用率
CPUの利用率です。直近2周間をプロットしましたが全然余力があります。
ネットワークトラフィック
受信側トラフィックのプロットです。現状で問題ないですね。
送信側トラフィックのプロットです。こちらも問題ないですね。はやくAmazon CloudFrontを検討するフェーズに入れる様にサイトを育てて行きたいです。
まとめ
WordPressのプラグインツールはどれも非常に簡単に設定できる様、工夫されているのでサーバーさえ立ち上がってしまえば簡単に設定できるものばかりだと思います。本格的に記事を書く前にある程度準備をしておくと快適になりますし、紹介したツールは評判が良い素直なツールばかりなので安心して使えます。ツールの作者様には感謝です。
コメント