IQサーバーアイコン
 

PHPのエラー表示について

PHPのエラー表示について

PHPのバージョン違いにより発生するエラーの原因と対処法を紹介します


非推奨の関数を使っている場合

eregi_replace()やsplit()などの関数はサーバーに導入されたPHPのバージョンによって非推奨となるため、Deprecatedエラーが表示されます。下記手順で暫定的にエラー表示を隠す対応が可能です。

・ドキュメントルートにphp.iniファイルを作成し、以下を記述

error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
date.timezone = Asia/Tokyo

・ドキュメントルートに.htaccessファイルを作成し、以下を記述

suPHP_ConfigPath /home/(アカウント名)/(public_html または 独自ドメインのドキュメントルート)

<Files php.ini>
Order deny,allow
Deny from all
</Files>

タイムゾーン設定のエラーが出る場合

php.iniファイルを独自に設定していて、strtotime()、mktime()、date()などの関数を利用している条件で、以下のようなエラーが出る場合があります。

Warning: strtotime() [function.strtotime]: It is not safe to rely on the system’s timezone settings.
You are *required* to use the date.timezone setting or the date_default_timezone_set() function.

php.iniファイルを独自に設定する場合、タイムゾーンの設定が必須となります。
php.iniファイルに下記を追記してください。

date.timezone = Asia/Tokyo


サイトが表示されず、ファイルのダウンロードが始まってしまう場合

.htaccessでhtmlファイルでもphpを利用できる設定を行っている場合に発生する症状です。
.htaccess内の記述を以下のように変更することで対応が可能です。

修正前:AddType application/x-httpd-php .php .htm .html
修正後:AddType application/x-httpd-php5 .php .htm .html


PAGE TOP