ワードプレスでテストサイトなどを作成している場合、アクセスを遮断するために、ベーシック認証をかけます。
その時に、Make.comなど外部ツールも遮断されて、利用できなくなります。
そこで、この記事では、ベーシック認証で「.htaccess」を使って、特定のIPアドレスを許可する方法を紹介します。
この記事で分かること
- ベーシック認証で特定のIPアドレスをスキップさせる方法
- Make.comとワードプレスの連携方法
ベーシック認証で特定のIPアドレスのみ認証なしにする方法
早速、特定のIPアドレスだけ、ベーシック認証をスキップさせる方法は下記のとおりです。
.htaccessに下記の記述を追加します。
# ベーシック認証設定
AuthUserFile "/xxxx/.htpasswd"
AuthName "BasicAuth"
AuthType BASIC
<RequireAny>
Require expr "%{REMOTE_ADDR} == 'xx.xx.xx.xx' || %{REMOTE_ADDR} == 'xx.xx.xx.xx'"
Require valid-user
</RequireAny>
下記は自分のサイトに合わせて変更が必要です。
- 「.htpasswd」ファイルは自分で作成してください
- 「AuthUserFile "/xxxx/.htpasswd"」の場所は任意に変更してください
- 「xx.xx.xx.xx」は、許可したいIPアドレスを記載してください
内容説明
2~4行でベーシック認証の設定を行っています。
なお、1行目は「.htpasswd」ファイルのパスを指定しているだけなので、そこに自分でファイルを作成してFTPでアップが必要です。
6~9行では、<RequireAny>を使って、条件のいずれかが満たされればアクセスを許可するという設定を行っています。
- 指定のIPアドレスの場合は「Require expr」の条件が満たされるため、ベーシック認証をスキップ
- それ以外の場合は「Require valid-user」によって認証を要求
「Require expr」は、REMOTE_ADDRを確認し、特定のIPアドレスの場合に許可する条件です。複数条件は「||(または)」で結合できます。
なお、「REMOTE_ADDR」のかわりに「HTTP_HOST」を指定すれば、ドメインの指定も可能です。
Require expr "%{HTTP_HOST} == 'xxx.xxx' || %{HTTP_HOST} == 'xxx.xxx'"
Make.comと連携する時に許可するIPアドレス
Make.comとワードプレスを連携する時に指定するIPアドレスは、自分の利用している「Zone」と合わせる必要があります。
「Zone」と「許可するIPアドレス」は以下の手順で確認できます。
- Makeにログインしてホーム画面をひらいた状態にしてドメイン名を確認(下記画像の場合のZoneは「eu2.make.com」)
- Allowing connections to and from Make IP addressesで許可するIPアドレスを確認
Make.comとワードプレスを連携する方法
Make.comとワードプレスの連携は、ワードプレスのプラグインが必要です。
ワードプレスで「make connector」と検索して、有効化します。すると、APIキーが表示されるのでメモします。
次のMakeのWordPressの設定に移り、Connectionの「Add」をクリックし、下記の設定を追加します。
- WordPress REST API base url:https://自分のドメイン/wp-json/(例:https://wporz.com/wp-json/)
- API Key:プラグインで取得したキー
これでワードプレスを接続できます。
REST APIのURL(https://自分のドメイン/wp-json/)は、利用するサーバーによって、遮断されている可能性があります。
例えば、エックスサーバーであれば、初期値は遮断されているので、設定変更が必要です。
サーバーパネルにアクセスして、「WordPress」>「WordPressセキュリティ設定」で、「REST API アクセス制限」を「OFF(無効)」にする必要があります。