Назад | Перейти на главную страницу

Как заставить httpd использовать более новый php / php-cgi

Привет, у меня проблема с изменением версии PHP на сервере Debian Wheezy. Ранее это был Debian Squeeze с PHP 5.2.17, и я сделал обновление dist, а также обновил все, что связано с PHP (PHP 5.6.30).

    "which php" command gives:
    /usr/local/bin/php

По этому пути есть исполняемый файл для php и php-cgi, который с "-v" дает 5.6.30

   php -v
   php5 -v
   php-cgi -v
   also gives PHP 5.6.30

Единственный путь, где что-то не так, - это / usr / local / php5 / bin, потому что в этой папке ./php дает версию 5.2.17, и это та же самая версия, которую каким-то образом использует httpd. Я пробовал просто заменить исполняемые файлы, но это дает внутреннюю ошибку сервера.

Я также пробовал apt-get удалить все, что связано с php, и переустановить php5, но это тоже не сработает.

На этом сервере действительно странная конфигурация, включающая множество VirtualHosts и httpd (на самом деле не знаю, но /etc/init.d/apache2 start / stop не работает, только /etc/init.d/httpd start / stop. Я не могу там все изменить, потому что не смогу все настроить с нуля.

Есть идеи, как заставить httpd использовать php-cgi 5.6.30 вместо этой старой вещи 5.2.17?

phpinfo (); возвращает, что используется CGI / FastCGI.

Поскольку PHP находится в /usr/local/bin, это означает, что кто-то сам скомпилировал PHP и Apache и установил их.

Чтобы использовать Apache из дистрибутива, вам нужно найти, где httpd версия Apache и его файлы конфигурации. Затем вам нужно скопировать файлы конфигурации в /etc/apache2.

Вам также может потребоваться проверить файлы конфигурации PHP.

Хотя может быть лучше пересобрать конфигурацию с нуля.