現時点では、Nginx を試しています。レポ経由でインストールされた最新バージョンを使用して動作しました。Nginx スタンドアロンではすべて正常に動作します。次に、さまざまなバージョンを実行できるソースを介してPHP 5.5.1をインストールしましたが、本番Webサーバーとphpバージョンには影響しません。(Nginx は、テスト目的で 80 とは別のポートで実行されていました。)
すべてうまくいきました。エラーなしで PHP 5.5.1 をコンパイルし、インストールし、PHP-FPM を起動し、必要に応じて PHP FPM を呼び出すように Nginx 構成を変更しました。私の最初のテスト Web サイトは、このバージョンで完全に機能しました。次に、作成した別の Web サイトを実行しようとしました。そのためのドキュメント ルートのみを変更しました。
次に、非常に奇妙なエラーが発生しました。
PHP Fatal error: Call to undefined function apache_request_headers() in [...]
はい、実際のエラーではありません...そこで、PHP-FPM/FastCGIモードでは利用できない機能を削除すると、ウェブサイトがスムーズに機能するかどうかをテストするために機能を削除しました。
次に、再試行すると、別のエラーがログに表示されました。
PHP Parse error: syntax error, unexpected ''INSERT ' (T_ENCAPSED_AND_WHITESPACE) in [...]
この変数をコメントアウトした後 (テスト用のみ)、別のエラーが発生しました:
PHP Parse error: syntax error, unexpected end of file, expecting ')' in [...]
したがって、これら2つのエラーが発生した理由はわかりません。最初のものはもちろん変更されたシステムです。機能は利用できません。
私の主な質問は、FPM モードの PHP 5.5.1 で私のコードがこれらのエラーを引き起こしているのはなぜですか? このウェブサイトは、ローカルの開発サーバー (PHP 5.4 および Apache) および運用サーバー (Apache 2.2 および PHP 5.4) で完全に動作します...コードは変更していません (db などの構成ファイルを除く)。では、この問題の原因を知っている人はいますか?
さらに詳しい情報が必要な場合は、お尋ねください。
編集:
エラー 1:
$sql = 'INSERT INTO ' . TABLE . '
(name)
VALUES
("' . $name . '")
ON DUPLICATE KEY UPDATE name=VALUES(name)';
エラー 2:
'TEXT' => text::parse($row['text']),