У меня есть веб-сервер с Fedora Core 5 (да, я знаю, что он очень старый), и на нем работал PHP 5.1.6, поэтому я загрузил и скомпилировал исходный код для 5.2.9 и перезапустил сервер, а phpinfo () по-прежнему возвращает 5.1.6 .
$ which php
/usr/local/bin/php
Но когда я переключаю версию на этой установке PHP, я получаю
$ /usr/local/bin/php -v
PHP 5.2.9 (cli) (built: May 26 2009 10:17:42)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
Что я мог пропустить или как это исправить?
Некоторые вещи могли пойти не так. Возможно, вы загружаете неправильную общую библиотеку. Apache может быть построен с использованием статической библиотеки старой версии PHP. Если вы установили Fedora с поддержкой PHP / Apache из коробки, у нее может быть двоичный файл php в нестандартном месте.
Сначала я бы проверил httpd.conf, чтобы узнать, является ли он общим модулем, CGI или статической библиотекой. Если это общий модуль, вам нужно пересобрать PHP. Если это CGI, вам просто нужно сменить каталог. Если он построен статически, вам необходимо перестроить Apache.
Re: http://www.php.net/manual/en/install.unix.apache.php
Похоже, вы скомпилировали /usr/local
префикс.
Ваш Apache, вероятно, загружает старый PHP из расположения по умолчанию. Grep, хотя Apache .conf
файлы ищут LoadModule php5_module
и измените его, чтобы загрузить новый модуль из /usr/local
.
Вам также следует обновить новый модуль PHP для Apache. Обязательно подтвердите в httpd.conf
.