本番アップ作業が上手くいかない!原因と対策備忘録
今回、新しい職場で前任者が担当していた案件2つを途中から引き継いで本番アップ作業を行ったのだが、2つともトラブったので今後のために備忘録を書いておこうと思う。
本番サーバーへアップしたら謎のPHPエラー!
本番サーバーにテスト環境で構築したサイトをまるっとアップロードするだけの作業だった。なぜかPHPエラーが表示されて全くサイトが表示できないなんて…。
おそらくテスト環境と本番環境でPHPのバージョンが違うために生じたエラーだと考えられるがエラーを追って行っても次々に見たことのないPHPファイルにたどり着くだけなので正直開発したわけでもない俺には理解できないものばかりだった。
ちなみに、PHPのバージョンを確認する方法は適当なテキストエディタに、
<?php phpinfo(); ?>
と記述して、phpinfo0000.phpみたいな他とかぶらないわかりやすい名前で保存してサーバーへアップしてそのURLをアドレスバーに入れて表示すれば自動的にPHPの情報が画面に表示される。
詳しくはphpのバージョン確認方法(外部サイト)などでご確認を。
それで確認出来たのが本番サーバーはphp5.5で、開発環境はphp7.2であるということ。流石に5と7だと違う書き方が必要な場合もあるだろう。
しょうがなく、ローカルのMAMPの設定を変えてphpのバージョンを5.4に変更してテストサイトを表示してみたがなんと問題なく表示できる。
phpのバージョンが問題でないとしたらエラーの解決が難しいぞ…ということになってどうしようか考えて、一旦エラーの出ている行をコメントアウトしてみてエラー文がどう変わるかチェックしてみようとすると完全に問題なく表示することが出来た。
なんだと…結構重要そうなファイルなのに読み込まなくても正常に表示されるってどういうこと?どっか不具合起きてない?と調べてみるが問題はなさそう。下層ページもエラーが出ていた行を全部コメントアウトしてみたら普通に表示出来るようになった。
いや〜マジで怖かった。なにせアップ開始が9時過ぎで先方が11時に会議で使うって言ってたからな。
エラーの原因を究明してたら確実にタイムオーバーで旧サイトが会議にバーンって表示されてたわ。クライアントから大好評でした!って御礼のメールが来たけど正直爆弾抱えてることは伝えていない…。
まぁ前任者が他の案件のソースを使いまわしてたみたいなので、いらんファイル読み込んでたのかもしれんけど。なんかが動いていないような気もせんでもないんだよなぁ。重要な何かが…。
データが重すぎてAll-in-One WP Migrationが使えない!
もう1件の本アップ作業の話なのだが、こちらに関してはテスト環境のデータを本アップするのに使うワードプレスのプラグイン、「All-in-One WP Migration」が使えないというトラブルだった。
多分、ワードプレスを使っている案件の場合、ほとんどみんなこのプラグインであっという間に本アップ作業が終わるからどこでもこれを使っていると思うのだが、通常サイトのデータって1ギガあったら巨大な方だと思う。
ただ、この案件のデータは3ギガを超えていた。
そうなると、アップロード容量を増やす方法を試してもhtaccessをアップしたらサーバー負荷が重すぎて500エラーが表示されるようになってしまう…。
本番サーバーでは1ギガぐらいが限界らしい。
ということで、しょうがないので、プラグインの高度なオプションから「メディアライブラリをエクスポートしない (ファイル)」をチェックして別でやることにした。
リニューアルなので本サーバーにメディアライブラリが存在するのでこれで行けるという想定で一応本番のデータを全部ローカルにバックアップして、アップロードする。3ギガ以上ある本番データのバックアップに1時間ぐらい掛かった…。
で、FTPで直接リニューアルしたテーマファイルなどをアップしたらサイトが表示できるようになった。よかったよかった!
と思ったら、なんかアイキャッチが上手く表示されない部分がある!
ブログを読み込んでいるページなのだがアイキャッチが70ページぐらい表示されていない!
300ページ中70ページだけ表示されていないのは何なの???って感じなのだが原因が全然わからず、どうしよう?画像はアップされてるのになぜ表示できないの?また手作業でアイキャッチを設定しなきゃならないの???
という絶望的な状況に陥る。
で、ディレクターの人に相談したら、もしかしたらデータを上書きしたらちゃんと表示できるかも??って言われてメディアファイルをローカルからアップロードして上書きしてみた。そしたら普通に表示されたのであった…。
何この意味のわからないエラー。前もプラグインを一旦全部無効にして再度有効にしたら普通に表示できるようになったみたいなことあったし、ほんとネットって意味わかんねえな…。
俺みたいなITが苦手なWEBデザイナーにこんな難しいことさせんといてくれよ…。そんなしんどいことしたくないから派遣社員でやってるのに全部俺に任せちゃだめよ…。
本アップでトラブル連発した話のまとめ
本アップ作業でトラブル原因は色々あるけど最低限テスト環境と本番環境とで同じバージョンのphpとMySQLにしておいたほうがいいと思う。後から本サーバーのphpのバージョンが低すぎてワードプレスが入らないとかわかったらかなり面倒なことになる。
エラーの原因がわからない時はとりあえずエラーはいてるところをコメントアウトしてみて正常にならないか確認してみるといいかもしれない。
あとは、リセットが重要。なぜかリセットしたら動き出すことがよくあるのがパソコンの世界なのである。
感謝→Amazonの履歴を御覧いただきありがとうございます。収益はサイト運営に大切に使わせていただきます。
コメントを残す