WordPressの【予約投稿の失敗】が直ったかもしれない

\wp-includes\cron.phpの
function spawn_cronのタイムアウトが0.01秒と短いので失敗しやすいそうです。
ATOM CPUの中のVM Pleyerなんで0.01秒はきついかな?
wp_remote_post( $cron_url, array(‘timeout’ => 0.01, ‘blocking’ => false, ‘sslverify’ => apply_filters(‘https_local_ssl_verify’, true)) );
10秒にしてみたが、失敗。

また、権限の問題もあるようです。
http://ssiscirine.perma.jp/wp-cron.php をブラウザで開くといつまで経っても戻ってきませんでした。
なので、/etc/hostsの設定を見直してみました。
127.0.0.1         ssiscirine.perma.jp

【ローカルIP】   ssiscirine.perma.jp
に変更してみました。
これで、先のURLは数秒で白紙画面に変わりました。
さて、結果はいかに???
残念ながら、失敗。
【グローバルIP】   ssiscirine.perma.jp
はどうかな?
http://ssiscirine.perma.jp/wp-cron.php をブラウザで開くといつまで経っても戻ってきません。
それでも試してみるとやっぱり失敗。
う~ん、難しいw
【ローカルIP】   ssiscirine.perma.jp
に戻して、
試しにapacheにVirtualHostの設定を追加してみると、
こっちは成功した。

  1. WordPressで使うドメインは、apacheでVirtualHost風に設定する。
  2. /etc/hostsにそのドメインを設定する。
  • 【サーバーのローカルIP】   【貴方のドメイン】

そもそも、apacheにVirtualHost設定が無ければ問題無かったのかな?
一個でもVirtualHostを設定したら、
元々のDocumentRootの設定は概ね無効になるから、
VirtualHost設定に書き換えないと見えなくなる。
その場合、VirtualHostで設定した以外のドメイン名でwgetすると何が返ってくるのか予測不能なんで・・・

<VirtualHost *:80>

ServerName 127.0.0.1

DocumentRoot  /var/www/html

</VirtualHost>

中からはこれで、/var/www/htmlの中が見えるけど、じゃ外から見るとスカなので、

<VirtualHost *:80>

ServerAlias *.*.*.*:80

DocumentRoot  /var/www/html

</VirtualHost>

としておけばIPアドレス指定で飛んできた場合だけ/var/www/htmlの中が見えるはず。
 
まぁ、サーバーのIPアドレスがグローバルIPなら

  1. /etc/hostsにそのドメインの設定が必要。
  • 【サーバーのグローバルIP】   【貴方のドメイン】

でもいいのかもしれないけど、そんなサーバー怖わ杉ですw(大笑
あ、リバースプロキシーがあれば戻ってくるかな・・・。

※他力本願すぎるかな。

残念ながらボクが使っているルーターはそう云う設定はできないらしい。(残念
どっちみち、DDNSを使っているのでhostにグローバルIPを書くとDiceから変更も必要になるので面倒なんで
VirtualHost設定でいいや。
多分これで、WP-DBManagerの自動バックアップも再び動き出すはず。
一旦Disableにしてから、毎日に戻しすと、バックアップファイルがすぐできたので、多分明日も大丈夫???
さて、朝7時に予約投稿設定しておきますか・・・。




コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA