Author: Kenichi Kurihara
WordPressでPHP Update Requiredと言われて
上記のような注意が出てました。PHPにセキュリティ問題があるから、PHPのバージョンをアップデートしなさいということです。
私のWordPressの環境はBitnamiのGCP向けのWordPressのパッケージです。残念ながら、Bitnamiはパッケージの中のソフトウェアを個別にアップデートすることは公式にサポートしてません。
仕方ないので、GCPに一からBitnamiのWordPressをインストールしました。時間かかるので、できるだけ避けたい作業ですね。All-in-One WP Migrationとか使えば、コンテンツの移行は楽になるかと思います。私のサイトは個人ページなので、ダウンタイムとか気にしませんでしたが、ダウンタイムを避けたい、または最小限にしたい状況だと丁寧に仕事をしなくてはいけないので、より厄介になります。Bitnamiを利用する際の欠点かと思います。
落ち着いてwordpress.comにログインして、
My Sites → Settings → Security → Prevent brute force login attacks
もしくは
管理 → 設定 → セキュリティ → 総当たりログイン攻撃を防止
から自分のIPを登録したら大丈夫。wordpress.orgのこちらのフォーラムページを参考にしました。
“you are probably offline” エラー
WordPressのHTTPSの設定を終えたつもりでいたらうっかりWP_SITEURLとWP_HOMEのプロトコルをHTTPからHTTPSに書き換え忘れてました。/opt/bitnami/apps/wordpress/htdocs/wp-config.phpのWP_SITEURLとWP_HOMEを以下のように書き換えるべきです。
define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] . '/');
この書き換えを忘れている間、ブログポストの編集をしようとすると”you are probably offline”というエラーが出ていました。最初はなんでそんなエラーが起きるのかさっぱり分かりませんでしたが、同じエラーの人を探してるとWP_SITEURLとWP_HOMEのことを書いている人がいたので、参考にさせてもらいました。
All-in-one WP Migrationのimportするためにアップロードサイズの最大サイズがひっかかったので、設定ファイルをいじった。私が使っているのはBitnamiのWordPress NGINXのパッケージなので対応する公式ドキュメントは以下のもの。
https://docs.bitnami.com/bch/apps/wordpress-pro/administration/increase-upload-limit-php/
/opt/bitnami/php/etc/php.ini を以下のように変更
; Maximum size of POST data that PHP will accept.
post_max_size = 16M
; Maximum allowed size for uploaded files.
upload_max_filesize = 16M
/opt/bitnami/nginx/conf/nginx.conf を以下のように変更
http {
...
client_max_body_size 16M;
...
サーバースタックを再起動
sudo /opt/bitnami/ctlscript.sh restart
グーグルスプレッドシートで乗り換え時間をApps Scriptで調べる
乗り換え時間をたくさん調べたかったのでGoogle Apps Scriptを書きました。スプレッドシートのメニューのツール→スクリプト エディタから以下のスクリプトを入力
function getDirectionTimeInSec(origin, destination) {
var now = new Date();
var finder = Maps.newDirectionFinder()
.setOrigin(origin)
.setDestination(destination)
.setDepart(now)
.setMode(Maps.DirectionFinder.Mode.TRANSIT);
var directions = finder.getDirections();
if (directions.routes.length == 0) {
throw "no route";
}
var route = directions.routes[0];
if (route.legs.length == 0) {
throw "no leg";
}
var time = route.legs[0].duration.value;
Logger.log("time = " + time);
return time;
}
function getDirectionTimeInMin(origin, destination) {
return Math.ceil(getDirectionTimeInSec(origin, destination) / 60);
}
function debugGetDirectionTime() {
return getDirectionTimeInMin("Shibuya", "Shinjuku");
}
スプレッドシートからは以下のように使います
BitnamiのWordPressが起動しなくなった時の話
Google Compute Engineのディスクが足りなくなったので、リサイズして再起動したら、WordPressが立ち上がりませんでした(泣)。
$ sudo /opt/bitnami/ctlscript.sh restart
するとApacheがport 80をlistenできなくて起動できてませんでした。
$ sudo netstat -tulpn
で80をlistenしてるApacheをkillして、もう一度
$ sudo /opt/bitnami/ctlscript.sh restart
したら、無事起動しました。よかった。
Apple ID の確認コードが通らずサインインできない話
所有デバイスに表示される6桁の2ファクタ番号を入れてもなぜか認識されず、SMSで確認コードを送っても認識せず、途方にくれた。
ChromeでなくてSafari使ったらすんなり入れた。
こういうの難しい。
#Legoでガンダム
後ろはハリボテ。疲れた。細部もっと直せそうだけど、満足。 pic.twitter.com/M0QfAtvBgI
— 栗原賢一 (@kenichikurihara) November 24, 2018
BitnamiのWordPressインスタンスをGCPで使っています。Let’s EncryptでHTTPSにしようと思い、このドキュメントですべて解決しました。