Basic/Digest 認証環境下で WordPress で予約投稿できない場合の対処法
Web サーバの設定で Basic 認証や Digest 認証をかけている場合、WordPress の予約投稿が失敗します。WordPress は予約投稿時にトリガーとして疑似 cron で自分自身に HTTP リクエストを送っているのですが、そのリクエストもブロック認証でブロックくされてしまうためです。
これを解決するためには、ローカルホスト(サーバ自身)からのアクセスについては認証を回避するようにしてあげましょう。
たとえば Apache で Digest 認証と IP による許可を組み合わせるには、conf ファイルや .htaccess での認証で、Satisfy any
を使います。ここでは 127.0.0.1 と、サーバのグローバルIP (198.51.100.123 としています) を追加しています。
1 2 3 4 5 6 7 8 9 |
AuthUserFile /etc/httpd/auth/.htdigest AuthName Authorization AuthType Digest Require valid-user <strong>Satisfy any</strong> Order deny,allow Deny from all Allow from 127.0.0.1 Allow from 198.51.100.123 |
これで自分自身による HTTP リクエストは許可されますので、投稿が成功するはずです。お試しあれ。
ITエンジニア募集中!
キュアコード株式会社はITエンジニアを募集しております。少人数の職場なので、上流・下流やサーバー・クライアント対応の垣根なく、あなたの強みを活かしながら いろいろなことにチャレンジ可能です。エンジニアとしての未経験の方、経験が少ない方も歓迎しています。
下記よりITエンジニア募集の採用情報をご覧いただけます。