コアサーバーのPHPバージョンアップへの対応

DSC_0364

コアサーバーが順番にバージョンアップを行っています。PHPが5.2から5.3へバージョンアップしたことで、急に動かなくなるプログラムが続出して、その都度対応をしています。

エラーが出るポイントはほぼ決まっているので、まとめておきます。

スポンサーリンク

・.hraccessファイルの表記

.hraccessファイルに、php_flag、php_value、mod_gzip_onといった記述があると500エラーが出ます。記述を消去するか、コメントアウトします。

代わりに、.user.iniファイルを作って記述します。ただしそのままコピペではダメです。

php_flag register_globals off

register_globals=off

のように、最初の部分を取り払って、設定部は=(イコール)を入れます。

.user.iniのようなドットから始まるファイルは、パソコン環境によっては作れない場合があります。まずはドットなしのuser.iniファイルで編集して、サーバーへアップした後に、名前を変更するとよいでしょう。アップする場所は、サイトのトップ下のディレクトリです。

対応方法は、下記のページにまとめられています。

コアサーバーApache/PHPのバージョンアップ

・register_globals on

エクスリア、コアサーバーはデフォルトでregister_globalsがONになっていました。$_GET[’sanple’]や$_POST[’sanple’]といった外部からのパラメーターを$sampleという変数で取り出せるものです。

セキュリティ的に問題があるので、今回からOFFになってのでしょう。.user.iniでregister_globals=onの設定をしても良いですが、コード内の記述を変更したほうが良いでしょう。

・require()、include()と、header(“location: “)

header(“location: “)でリダイレクトをする際、header()以前に、htmlの文字列が表示されてしまうとエラーになります。

該当するファイル内で問題なくても、コード先頭で、require()、include()で外部のファイルを読み込んでいて、読み込み先のファイルの最後の?>の後に改行やスペースがあると、エラーになります。

今回のバージョンアップで、チェックが厳しくなったようです。

・エラー表示

エラー表示がデフォルトでOFFになっているようです。.user.iniファイルに下記の記述をすれば、エラーが表示されるようになります。

display_errors = On
error_reporting = E_ALL & ~E_NOTICE

▼▼▼▼

以上です。ありがちな問題は、随時更新していきます。

今日のわかった

PHPが5.3系にバージョンアップすると、セーフモードがなくなります。

WordPressは利用しやすくなりますね。

PHPバリュードメイン
スポンサーリンク
当ブログの記事に共感していただけたら、また読みに来ていただけると嬉しいです。読んでくれる方の数が多くなると、更新するヤル気に繋がります(^^)
フォロー、ブックマークしていただけると、ブログ更新を見逃しません

コメント

タイトルとURLをコピーしました