Mudar a versão do PHP de um site inteiro é fácil e está explicado em como mudar a versão do PHP. Este artigo é o passo seguinte: versões diferentes em pastas diferentes, extensões, e como confirmar o que está mesmo a correr — porque o que o painel mostra e o que a página usa nem sempre é a mesma coisa.
As três ferramentas, e para que serve cada uma
| No cPanel |
Para quê |
| MultiPHP Manager |
Escolhe a versão por domínio. Cada domínio e subdomínio da conta pode ter a sua. |
| Selector de PHP |
Aí escolhe a versão e liga ou desliga extensões, e mexe nas opções. É a ferramenta completa. |
| MultiPHP INI Editor |
Muda directivas do php.ini por domínio, em modo básico ou editando o texto. |
|
Comece sempre pelo painel. Há um truque de .htaccess que também muda a versão, e explicamo-lo mais abaixo — mas ele não leva consigo as extensões nem as opções que escolheu no painel. Quando as duas coisas se cruzam, o site corre numa versão sem as peças de que precisa, e o erro que aparece não aponta para cá. Use o painel; o .htaccess só quando não houver alternativa.
|
Uma versão diferente só numa pasta
Isto é pedido sobretudo em dois casos: uma loja antiga numa subpasta que ainda não corre em PHP 8, ou uma área nova que já exige uma versão mais recente do que o resto do site.
| 1 |
No cPanel, abra o Gestor de Ficheiros e entre na pasta em causa. Ligue Settings → Show Hidden Files.
|
|
| 2 |
Abra o .htaccess dessa pasta, ou crie-o. Faça primeiro uma cópia: duplique o ficheiro e chame-lhe .htaccess-copia.
|
|
| 3 |
Acrescente no topo do ficheiro, trocando o número pela versão que quer:
|
|
<FilesMatch "\.(php|phtml)$">
SetHandler application/x-lsphp82
</FilesMatch>
| 4 |
Grave e confirme com o teste da secção seguinte. Se o site der erro, apague as linhas — volta tudo ao que estava.
|
|
O 82 é o PHP 8.2; para o 8.3 seria x-lsphp83, e assim por diante. Use só versões que apareçam no painel: escrever uma que não exista dá erro 500 em toda a pasta — ver os erros do site: 500, 403, 404 e 508.
|
Numa pasta com subdomínio próprio, há caminho melhor. Se a pasta corresponde a um subdomínio, não mexa no .htaccess — o MultiPHP Manager trata subdomínios como domínios e deixa escolher a versão na lista, com extensões e tudo. Ver domínios estacionados e subdomínios.
|
Confirmar o que está mesmo a correr
O painel diz o que devia estar. Para ver o que a página usa, pergunte-lhe directamente. Crie um ficheiro na pasta que quer testar:
<?php phpinfo();
| 1 |
Chame-lhe um nome que ninguém adivinhe — info-8f3a2.php e não info.php.
|
|
| 2 |
Abra-o no navegador. A versão está logo no topo; mais abaixo ficam as extensões carregadas e todas as directivas em vigor.
|
|
| 3 |
Apague o ficheiro imediatamente a seguir.
|
|
|
Não deixe o phpinfo no ar. Ele mostra caminhos do sistema, módulos carregados, versões exactas e por vezes valores de configuração — ou seja, um mapa para quem quiser atacar o site. Os varredores automáticos procuram info.php e phpinfo.php por omissão, todos os dias. É usar e apagar, sempre.
|
Correr PHP dentro de ficheiros .html
Acontece quando se herda um site em .html e se quer acrescentar uma pequena parte dinâmica sem mudar todos os endereços. Uma linha no .htaccess resolve:
AddHandler application/x-httpd-lsphp .html .htm
|
Tem um custo, e convém sabê-lo. A partir daí todos os ficheiros .html passam pelo PHP, mesmo os que não têm código nenhum — o que os torna mais lentos e impede que sejam servidos da cache como ficheiros estáticos. Ver o site está lento: o que faz mesmo diferença. Se for só uma página, é quase sempre melhor mudá-la para .php e deixar um redireccionamento do endereço antigo.
|
Extensões do PHP
É o segundo motivo de «mudei a versão e o site partiu»: cada versão tem a sua lista de extensões, e a lista não vem atrás sozinha. Uma loja que precise de intl ou de soap deixa de funcionar se a versão nova as tiver desligadas.
| 1 |
No selector de PHP, escolha a versão primeiro.
|
|
| 2 |
Percorra a lista de extensões e ligue as que o seu site usava. Se não souber quais, o phpinfo() na versão antiga mostra-as.
|
|
| 3 |
Ligue só o que precisa. Cada extensão carregada custa memória em cada pedido.
|
|
Se depois de mudar a versão o site der erro crítico, erros comuns do WordPress ajuda a ler a mensagem; e para voltar atrás basta escolher de novo a versão anterior no mesmo ecrã.
|
Precisa de uma versão ou de uma extensão que não encontra?
Falar connosco
|
PRODUTO RECOMENDADO Alojamento de sites com cPanel Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 9.000,00 Kz/mês Ver planos |