Я установил Fedora 25 на сервер, и мне нужно понизить php с 7 до 5.6. Я сделал следующее:
dnf remove php
dnf remove php-common
wget https://rpms.remirepo.net/fedora/remi-release-25.rpm
rpm -Uvh remi-release-25.rpm
dnf --enablerepo=remi install php56 php56-php-common php56-php-cli php56-php-mbstring php56-php-mcrypt php56-php-pear php56-php-xml php56-runtime php56-php-mysqlnd
Все работало нормально, но теперь все называется php56 вместо php, поэтому система ничего не может найти. Например:
# php -r "echo 'Current PHP version: ' . phpversion();"
-bash: /usr/bin/php: No such file or directory
# php56 -r "echo 'Current PHP version: ' . phpversion();"
Current PHP version: 5.6.30
Как мне сделать последний шаг и заставить все (включая пакеты) работать как раньше?
Я попытался создать символическую ссылку следующим образом, но код php не запускается из Интернета, поэтому ссылка apache-> php не работает.
cd /usr/bin
ln -s /opt/remi/php56/root/usr/bin/php php
Заранее спасибо.
Вот как создаются коллекции программного обеспечения: параллельная установка без изменения базовой системы и возможность использования нескольких версий. Поэтому / usr / bin / php не предоставляется специально.
Ты можешь читать Моя рабочая станция PHP.
Для mod_php (модуль apache), если вы можете удалить "php" (базовый пакет) и установить "php56-php"(которого нет в вашем списке), он будет работать сразу после установки. Если вы не можете удалить" php ", вы можете отключить его директиву LoadModule (/etc/httpd/conf.modules.d/15-php. conf), поэтому будет загружен модуль php5 (/etc/httpd/conf.modules.d/10-php56-php.conf).
Для FPM (Сервер FastCgi), когда php56-php-fpm служба запускается, вам нужно только адаптировать путь к сокету в конфигурации веб-сервера (apache, nginx или lighttpd)
Для CLI, вы можете использовать команду модуля (и большинство приложений найдут php и связанные с ним команды в PATH)
$ module load php56
$ php -v
PHP 5.6.30 (cli) (built: Jan 20 2017 17:58:52)
И если вам действительно нужна одна версия, вы можете создать символическую ссылку, она будет работать:
$ ln -s /opt/remi/php56/root/usr/bin/php /usr/bin/php
$ php -v
PHP 5.6.30 (cli) (built: Jan 20 2017 17:58:52)