セキュリティ対策のすべてをプラグインに任せる必要はありません。
.htaccessファイルに直接設定を書くことで、プラグインを追加せずにWordPressを保護できます。プラグインを増やさないという方針と相性がよい方法です。
結論から言います。.htaccessで対応するべき設定は3つあります。wp-config.phpへのアクセス制限・XML-RPCへのアクセス遮断・httpsへのリダイレクトです。ただし記述ミスでサイト全体にアクセスできなくなるため、必ずバックアップを取ってから作業してください。
.htaccessとは何か|サーバーレベルで動くアクセス制御
プラグインより前のレイヤーで動く
.htaccessはApacheウェブサーバーの設定ファイルです。WordPressのルートディレクトリに配置されており、URLへのアクセスをサーバーレベルで制御します。
プラグインはWordPressが起動した後に動きます。.htaccessの設定はWordPressが起動する前、サーバーレベルで処理されます。
つまり、.htaccessでブロックされたアクセスはWordPressに到達しません。プラグインよりも前の段階で遮断できます。
エックスサーバーでの注意点
エックスサーバーはApache(一部環境ではNginxとの組み合わせ)を使っています。.htaccessの設定は基本的に有効ですが、設定内容によってはサーバーの動作に影響が出ることがあります。
作業前に必ずバックアップを取ってください。エックスサーバーの自動バックアップ機能またはAll-in-One WP Migrationでサイト全体をバックアップしてから作業します。
.htaccessに追記する3つの設定
設定1:wp-config.phpへのアクセス制限
wp-config.phpはWordPressの最も重要な設定ファイルです。データベースの接続情報・セキュリティキーなどが含まれています。
外部から直接このファイルにアクセスできないようにします。
<files wp-config.php>
order allow,deny
deny from all
</files>
この設定を追記することで、https://あなたのドメイン/wp-config.php に直接アクセスしようとしても403エラーが返されます。
設定2:XML-RPCへのアクセス遮断
XML-RPCはWordPressのリモート操作機能です。使わない場合は、このエンドポイントへのアクセスを完全に遮断します。
<files xmlrpc.php>
order allow,deny
deny from all
</files>
CloudSecureでもXML-RPCを無効化できますが、.htaccessでサーバーレベルで遮断するほうがより確実です。CloudSecureとの二重設定になっても問題ありません。
設定3:httpからhttpsへのリダイレクト
SSL設定後、すべてのhttp://アクセスをhttps://に自動転送します。
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
この設定は、SSL設定が完了してから追記してください。SSLが有効になっていない状態でこの設定を追記すると、無限リダイレクトが発生します。
.htaccessの編集方法
エックスサーバーのファイルマネージャーを使う
エックスサーバーのサーバーパネルにログインし、「ファイルマネージャー」を開きます。
対象ドメインの public_html ディレクトリ(または public_html/ドメイン名/public_html/)にある.htaccessファイルを開きます。
既存の内容の下に、追加したい設定を追記して保存します。
既存の内容を削除しないでください。 WordPressが正常に動作するために必要な設定が記載されています。新しい設定は既存内容の下に追記します。
FTPソフトを使う
FileZillaなどのFTPソフトを使って.htaccessファイルをダウンロードし、テキストエディタで編集してアップロードし直す方法もあります。
.htaccessは先頭にドット(.)がついた隠しファイルです。FTPの設定で「隠しファイルを表示する」をオンにしてから作業してください。
設定後に必ず確認すること
サイトへのアクセス確認
.htaccessを編集・保存したら、すぐにサイトへアクセスして正常に表示されることを確認します。
正常に表示される場合は設定が問題なく適用されています。
403エラー・500エラーが出た場合
設定に誤りがある場合、403エラー(アクセス拒否)または500エラーが出ることがあります。
サーバーパネルのファイルマネージャーから.htaccessを開き、追記した設定を削除または修正してください。
バックアップを取っている場合は、バックアップからファイルを復元できます。
CloudSecureとの使い分け
CloudSecureで設定できる内容は、CloudSecureに任せてください。
.htaccessで追加する意義があるのは、CloudSecureでカバーできない設定(wp-config.phpの保護、httpsリダイレクトなど)です。
同じ内容を.htaccessとCloudSecureの両方で設定することは問題ありませんが、管理が複雑になることは念頭においてください。
まとめ|.htaccessで追加するべき3設定
この記事の内容を整理します。
.htaccessで追加する3設定
- wp-config.phpへのアクセス制限(
<files wp-config.php>で deny from all) - XML-RPCへのアクセス遮断(
<files xmlrpc.php>で deny from all) - httpからhttpsへのリダイレクト(SSL設定完了後に追記)
作業前の鉄則
必ずバックアップを取ってから作業する。設定後はすぐにサイトへのアクセスを確認する。
CloudSecureの設定と組み合わせることで、プラグインを増やさずにWordPressのセキュリティを効果的に強化できます。

