TOP › Forums › バグ報告と提案(Requests and Feedback) › KUSANAGI RoDのWordPressサイトヘルスチェックで致命的な問題
- This topic has 3 replies, 2 voices, and was last updated 4 years, 8 months ago by
satoru.
-
AuthorPosts
-
-
2022年2月22日 at 00:53 #868
KUSANAGI RoDでプロビジョンした後のWordPressでの問題です。
WordPressのサイトヘルスチェックにて、解決方法が分からない致命的な問題が2件出ています。REST API でエラーが発生しました REST API は WordPress や他のアプリケーションがサーバーと通信する手段の1つです。たとえばブロックエディター画面は、投稿や固定ページの表示や保存に REST API を使用しています。 REST API リクエストはエラーのために失敗しました。 エラー: cURL error 7: Failed to connect to <FQDN> port 443 after 0 ms: Connection refused (http_request_failed)サイトでループバックリクエストが完了できませんでした パフォーマンス ループバックリクエストは予約イベントの実行に使用されます。またテーマやプラグインの組み込みエディターでは、コードの安定性の確認に使用されます。 サイトへのループバックリクエストは失敗しました。現在、依存する機能は想定どおりに動作していません。 エラー: cURL error 7: Failed to connect to <FQDN> port 443 after 0 ms: Connection refused (http_request_failed)対処方法を教えて頂けないでしょうか?
-
2022年2月22日 at 11:10 #870
これらの現象は、すべて KUSANGI RoDの内部SSLポートが8443で有ることに由来します。
dockerでは、セキュリティの観点からroot権限でのプロセス実行は避けるべきとされています。KUSANAGI RoDもその基準に則り内部プロセスをユーザ権限で動作させています。80ポートや443ポートは、root権限でのみLISTENできるポートのため、RoDでは8080/8443 を使用し、外部にフォワードするときだけ80/443 に変更しています。
このため、phpから443 ポートをLISTENしても応答がありません。
1. REST APIですが、RoD外部からのREST API接続には問題ありません。php自体からのREST APIに問題が発生する可能性があります。しかし、ブロックエディタの挙動を確認すると、特に問題なく編集・投稿できています。
2. ループバックリクエストは問題があり、予約イベントの実行に失敗することを確認しました。これについては、現時点での機能制限とさせてください。将来的には解決予定です。解決時期は未定です。
-
This reply was modified 4 years, 8 months ago by
satoru.
-
This reply was modified 4 years, 8 months ago by
-
2022年2月23日 at 06:15 #872
satoru様、いつも迅速に対応いただきありがとうございます。
KUSANAGI RoDでは80、443ポートをなぜ使っていないのか疑問に思っていましたが、
セキュリティ上の問題であえて利用していない旨、理解しました。Let’s Encryptとマルチサイトに対応するため、steveltn/https-portal – Docker Hub にて
リバースプロキシを構成しているのですが、このcomposeファイルでのports設定が
80:80と443:443になっているので、これも問題だということになりますね。。。KUSANAGI MAGAZINEの記事「KUSANAGI RoDの使い方(10)~高速Dockerの話(最終回)~」にて
Certbotの実用化とPHPの高速化に対応予定とのことでしたが、状況はいかがでしょうか?
公式にLet’s Encrypt対応して頂けると大変助かります。 -
2022年2月25日 at 14:22 #873
PHPの高速化に関しては、PHP8.1 + WordPress 5.9 移行を使用することで解決済みです。
Certbotの使用に関しては、どうしても証明書更新処理をcronなどで実行することになります。docker-compose内ではcronのような運用できないため、どうしてもホスト側での処理が必要になります。
本番環境で docker-compose で必要かという部分が不透明だった(開発時点では、docker-compose の存続状況が危ぶまれていた)ため、その処理の実装を行っていませんでした。要望があるならば、作成してみようと思います。
-
-
AuthorPosts
- You must be logged in to reply to this topic.