Composer na hospedagem compartilhada: instalar e rodar

PHP e Programação··· 336 visualizações· 3 min de leitura

O Composer não vem instalado como comando no servidor, mas não precisa dele assim. Baixa-se um único arquivo, o composer.phar, para dentro da sua conta, e corre-se com o PHP: php composer.phar install. Precisa de uma linha de comandos, que é o Terminal do cPanel ou o SSH, e ambos existem em todos os planos de hospedagem compartilhada.

Instalar o composer.phar

1 Abra o Terminal do cPanel (ou ligue por SSH, na porta 2299) e entre na pasta do projeto, por exemplo cd ~/meu-projecto.
2 Confirme qual PHP o comando php usa: escreva php -v. Se não for a versão do projeto, use o caminho completo da versão certa nos comandos seguintes, que tem a forma /opt/alt/php82/usr/bin/php (troque 82 pela versão pretendida, sem ponto).
3 Baixe o instalador: php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');". A página de download do Composer publica também a soma de verificação do instalador; vale a pena conferi-la antes de o rodar.
4 Corra-o: php composer-setup.php. Aparece o arquivo composer.phar.
5 Apague o instalador: php -r "unlink('composer-setup.php');".
6 Instale as dependências do projeto: php composer.phar install. Em produção, php composer.phar install --no-dev --optimize-autoloader deixa de fora o que só serve para desenvolver.

install ou update?

Comando O que faz
composer install Instala exatamente o que o arquivo composer.lock diz. É o que se roda no servidor, para ficar igual ao que testou.
composer update Procura versões novas e reescreve o composer.lock. Corra-o no seu computador, teste, e leve o resultado para o servidor.
composer require pacote Acrescenta um pacote ao projeto e instala-o.
“Killed”, ou o comando para a meio. A conta tem limites de memória e de processos (veja os limites que ninguém anuncia), e o Composer gasta bastante a resolver dependências. Tente php -d memory_limit=-1 composer.phar install. Se continuar sendo terminado, rode o install no seu computador e envie a pasta vendor por SFTP.
Não deixe o composer.phar nem a pasta vendor ao alcance de quem visita o site quando o projeto o permite: ponha a aplicação fora da pasta pública, ou deixe só o arquivo de entrada lá dentro. E nunca publique o .env. Veja manter as senhas fora do código.
Prefere não usar a linha de comandos? Faça o composer install no seu computador, com a mesma versão de PHP, e envie vendor e composer.lock por SFTP. O resultado é o mesmo.

As bibliotecas que o Composer instala e o código da sua aplicação são seus, e não os mantemos nós. A fronteira está em até onde vai o nosso suporte. Para o Laravel, que usa o Composer de ponta a ponta, veja pôr uma aplicação Laravel a rodar.

Não encontra o Terminal no seu cPanel? Pergunte-nos, com o nome do seu domínio.

Abrir um pedido de suporte

VEJA TAMBÉM

O Terminal do cPanel: uma linha de comandos sem instalar nada

Pôr uma aplicação Laravel a rodar

Ver e ajustar a configuração do PHP

SFTP em vez de FTP

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde R$ 36,30/mês (plano de 3 anos, com cupom)

Ver planos
Esta resposta foi útil? Sua resposta nos ajuda a melhorar este artigo.