hello-world
webエンジニアのメモ。とりあえずやってみる。

[WordPress]StaticPressで初期化中にエラーになる場合

公開日時

このブログはnginx + php-fpmを使ったWordpressで動いているのですが、ふとs3に移行しようと思い調べてみたところ「 StaticPress」プラグインを使って静的コンテンツに再構築し、それをs3にアップロードするのが定番のようでした。

そこで、まずはStaticPressを使って静的コンテンツを再構築してみたのですが、以下のようにエラーが発生してしまいました。

初期化中...
エラー!

これだけだと何が原因なのか分からなかったので、nginxのエラーログを確認してみたところ、以下のように「upstream timed out 」のエラーが発生していました。

2014/10/26 12:15:16 [error] 21918#0: *2232135 upstream timed out (110: Connection timed out) while reading response header from upstream, client: ...., server: blog.hello-world.jp.net, request: "POST /wp-admin/admin-ajax.php HTTP/1.1", upstream: "http://127.0.0.1:8080/wp-admin/admin-ajax.php", host: "blog.hello-world.jp.net", referrer: "https://blog.hello-world.jp.net/wp-admin/admin.php?page=static-press"

2014/10/26 12:15:16 [error] 21918#0: *2232152 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 127.0.0.1, server: blog.hello-world.jp.net, request: "POST /wp-admin/admin-ajax.php HTTP/1.0", upstream: "fastcgi://127.0.0.1:9000", host: "blog.hello-world.jp.net", referrer: "https://blog.hello-world.jp.net/wp-admin/admin.php?page=static-press"

そこで、nginxのvirtualhost設定を編集し、proxy_passでbackendのupstream(127.0.0.1:8080)にproxyしている部分に

proxy_read_timeout 600;

を記述し、 fastcgi_passでphp-fpm(127.0.0.1:9000)にproxyしている部分

fastcgi_read_timeout 600;

を記述してtimeout時間を10分に変更し、nginx設定再読み込み。

(一度300で試したのですがtimeoutになってしまいました。。。) 再度、「再構築」を行ったところtimeoutせず、静的コンテンツの生成ができました。

なお、初回実行時は全ての静的コンテンツを生成するのに30分程かかりました。

生成されたhtmlを確認してみたところ、SNSボタン等プラグイン経由で出力している部分がうまく表示されていなかったりしたのでもう少し調査してみる必要がありそうです。

参考


Related #Wordpress

[WordPress]Facebookいいねボタンがスタイル崩れを起こした場合の対処法

私の環境だけかもしれないですが一応メモ。

Insufficient arguments passed to this XML-RPC Method

WordPressを3.5.1にアップデートした後に、iOSの「Wordpress」アプリからアクセスすると

WordPressの自動バックアップにBackWPupを使う

これまで「バックアップしないとなー」と思いつつやってなかったので重い腰を上げてやってみました。

BackWPupを3.0.3にアップデートしたらDBバックアップができなくなった

Version: 3.0.4 がリリースされたのでアップデートしたところ、エラーなく動きました