
Eu fiz o seguinte:
sudo add-apt-repository ppa:ondrej/php5-5.6
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php5
sudo apt-get install libapache2-mod-php5.6
sudo add-apt-repository ppa:ondrej/apache2
Quando tento desabilitar a versão antiga do php5 com:
sudo phpdismod php5
Recebo o erro: AVISO: o arquivo ini do módulo php5 não existe em /etc/php/5.6/mods-available
Mesmo se eu mover o arquivo ini para este diretório, ocorrerá o mesmo erro. Não sei o que estou perdendo??
Em geral, alguém pode me explicar como fazer com que minha instância use a versão recém-instalada, já que ainda pareço ter as duas árvores de diretórios php em minha instância. php5/.. e php/5.6
Responder1
Você está misturando diferentes PPAs, versões e comandos de maneira incompatível, vamos detalhar:
libapache2-mod-php5.6
está presenteppa:ondrej/php
e este é realmente o PPA que você deseja usarphpdismod
é um comando para desabilitar extensões PHP, e não para gerenciar módulos Apache2, você precisaa2dismod
para issoO módulo PHP Apache2
ppa:ondrej/php5-5.6
é denominadolibapache2-mod-php5
Então o correto seria:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get purge php5-common # remove and purge old PHP 5.x packages
sudo apt-get install libapache2-mod-php5.6
Se você não desinstalar php5-*
os pacotes primeiro, será necessário desabilitar o php5
módulo e habilitar php5.6
o módulo:
sudo a2dismod php5
sudo a2enmod php5.6
E opcionalmente adicione o repositório Apache2:
sudo add-apt-repository ppa:ondrej/apache2
sudo apt-get update
sudo apt-get dist-upgrade
Há umguia de migraçãodisponível para pacotes PPA.