ホームページ >バックエンド開発 >PHPチュートリアル >PHPハッシュ競合を一時的に解決するパッチ適用後、eAcceleratorが使用できなくなる問題を解決しました。

PHPハッシュ競合を一時的に解決するパッチ適用後、eAcceleratorが使用できなくなる問題を解決しました。

WBOY
WBOYオリジナル
2016-06-13 13:24:52780ブラウズ

PHPハッシュ競合を一時的に解決するパッチ適用後にeAcceleratorが使用できなくなる問題を解決
最近、php ハッシュの競合問題が発生しました。詳細については、Xue Migrant Bird のブログ投稿を参照してください。
Brother Xue が提供した一時パッチを適用した後、eAccelerator が動作しないことがわかりました。
php -v を実行すると、
[eAccelerator] というプロンプトが表示されます。「eAccelerator」のこのビルドは PHP バージョン 5.2.17 用にコンパイルされました。PHP バージョン (5.2.17p1) に合わせて再ビルドするか、プリコンパイルされたバイナリをダウンロードしてください。
Mainこれは、PHP のバージョン番号が変更され、eAccelerator がエラーを報告するためです。
eAccelerator のソース コードを探したところ、eaccelerator.c ファイルに PHP のバージョン番号を確認するコード (主に encode_version 関数) があることがわかりました。

} else if (strncasecmp(buf, "beta", 4) == 0) {
         a = 3;
        sscanf(buf, "beta%u", &b);
}

という行を見つけて追加します。以下のコード
} else if (buf, "p1%u", &b) {
       a = 0;
       b = 0;
 }

eAccelerator を再コンパイルし、php -v を再度実行します。エラーは報告されません。CGI を再起動します。eAccelerator ディレクトリにファイルが再構築されており、この問題が正常に解決されたことがわかります:)

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。