nagiosQL安裝環境:
CentOS release 6.4 (Final)
php-5.5.4
nagiosql_320
nginx version: nginx/1.2.3
安裝一切正常,當訪問nagiosQL界面時會提示:
PHP Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead
查看nginx日志提示:
PHP message: PHP Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead
解決方法:
由於方法preg_replace()為PHP 5.5.x 中廢棄的特性,官方建議需要在代碼中將preg_replace()替換為函數preg_replace_callback,可以問題解決。 (具體請見官方介紹:
http://www.php.net/manual/zh/migration55.deprecated.php)
此問題涉及到nagiosQL文件:/usr/local/nagios/nagiosql/libraries/pear/HTML/Template/IT.php
由於本人並不太熟悉PHP語法,故暫無法通過替換函數解決。
故無奈之下將PHP版本恢復至php-5.4.21,最終問題解決。
此問題是由於nagiosql_320,當前未對php5.5進行良好的支持導致的,可能會在以后的版本發布中解決此問題。如果有哪位同仁已經解決此問題,希望能將修改后IT.php的代碼發給我,我們共同進步。
值得注意的是,我們在安裝對PHP支持的頁面時,一定要查看好當前頁面對PHP版本的支持,否則極易出現各種問題。
