Menu
Szybki wybór
Hosting Domeny VPS SSL Kalkulator Porównania FAQ
Aktywne kody
Wszystkie kody rabatowe

Composer na hostingu — zarządzanie zależnościami PHP

Ostatnia aktualizacja: kwiecień 2026

TL;DR: Zainstaluj Composera przez SSH: php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php. Wygeneruje composer.phar. Uruchamiaj przez php composer.phar install. Katalog vendor/ dodaj do .gitignore — nigdy nie wgrywaj przez FTP.

Instalacja Composera na hostingu przez SSH

Composer można zainstalować lokalnie w katalogu projektu — nie potrzebujesz uprawnień root. Wymaga PHP w wersji minimum 7.2.5 i dostępu SSH.

# Połącz się przez SSH z hostingiem
ssh [email protected]

# Przejdź do katalogu projektu
cd ~/public_html/mojaplikacja

# Pobierz instalator Composera
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

# Zainstaluj (tworzy plik composer.phar)
php composer-setup.php

# Usuń instalator
php -r "unlink('composer-setup.php');"

# Sprawdź instalację
php composer.phar --version

Opcjonalnie — utwórz alias żeby wpisywać composer zamiast php composer.phar:

# Dodaj do ~/.bashrc
echo 'alias composer="php ~/public_html/composer.phar"' >> ~/.bashrc
source ~/.bashrc

# Teraz możesz używać:
composer install

Podstawowe komendy Composera

php composer.phar install

Instaluje wszystkie zależności z composer.lock (jeśli istnieje) lub composer.json. Używaj na produkcji — gwarantuje te same wersje co w dev.

php composer.phar install --no-dev --optimize-autoloader

Instaluje bez pakietów developerskich (--no-dev) i optymalizuje autoloader (classmap zamiast PSR-4 scan) — szybszy autoloading na produkcji.

php composer.phar require vendor/package:^1.0

Dodaje nową zależność do composer.json i instaluje ją.

php composer.phar update

Aktualizuje zależności do najnowszych wersji zgodnych z composer.json i aktualizuje composer.lock. Uwaga: na produkcji używaj ostrożnie.

.gitignore i vendor/ — dobre praktyki

Katalog vendor/ należy zawsze umieścić w .gitignore — przechowuj tylko composer.json i composer.lock.

# Plik .gitignore
/vendor/
.env
.env.local
*.log
Dlaczego nie wgrywać vendor/ przez FTP? Laravel tworzy ~15,000 plików w vendor/. Wgrywanie przez FTP = kilka godzin + ryzyko błędów. Prawidłowy workflow: git push → SSH na serwerze → composer install (kilkadziesiąt sekund).

Minimalna struktura pliku composer.json

{
  "name": "moja-firma/moja-strona",
  "require": {
    "php": "^8.1",
    "guzzlehttp/guzzle": "^7.0",
    "vlucas/phpdotenv": "^5.5"
  },
  "require-dev": {
    "phpunit/phpunit": "^10.0"
  },
  "autoload": {
    "psr-4": {
      "App\\": "src/"
    }
  }
}

Wybór wersji PHP dla Composera

Composer używa domyślnej wersji PHP z PATH. Sprawdź i zmień na hostingu:

# Sprawdź aktualną wersję PHP
php -v

# Jeśli hosting ma wiele wersji PHP, możesz użyć konkretnej:
/usr/bin/php82 composer.phar install

# LH.pl — dostępne wersje przez which:
which php74 php80 php81 php82 php83

W pliku .htaccess możesz wybrać wersję PHP dla aplikacji webowej (np. PHP 8.2):

# .htaccess — wymuszenie PHP 8.2 (składnia zależna od hostingu)
AddType application/x-httpd-php82 .php

Najczęstsze pytania

Czy Composer działa na hostingu współdzielonym? +
Tak — jeśli hosting oferuje dostęp SSH i PHP w wersji minimum 7.2.5 (Composer 2 wymaga PHP 7.2.5+). Większość polskich hostingów współdzielonych (LH.pl, CyberFolks, zenbox, home.pl) oferuje SSH i PHP 8.x. Zainstaluj Composera lokalnie w katalogu projektu przez SSH: php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php && php -r "unlink('composer-setup.php');"
Dlaczego nie powinienem wgrywać katalogu vendor/ przez FTP? +
Katalog vendor/ może zawierać dziesiątki tysięcy plików (np. Laravel ma 15k+ plików w vendor/). Wgrywanie przez FTP zajmie godziny. Prawidłowy workflow: dodaj vendor/ do .gitignore, trzymaj tylko composer.json i composer.lock w repozytorium, uruchom composer install przez SSH na serwerze. Wyjątek: jeśli hosting nie ma SSH i nie możesz uruchomić Composera, musisz wgrać vendor/ — ale to ostateczność.
Jak wybrać wersję PHP dla Composera na hostingu? +
Na hostingach z MultiPHP (LH.pl, CyberFolks, home.pl) możesz zmienić wersję PHP per katalog przez plik .htaccess: AddType application/x-httpd-php82 .php (dla PHP 8.2) lub przez panel cPanel → MultiPHP Manager. Composer wymaga PHP 7.2.5+; Composer install używa wersji PHP z PATH — sprawdź przez ssh: php -v. Na DirectAdmin zmień wersję PHP przez Extra Features → PHP Version.
Jak zautomatyzować composer install po deployu przez GitHub Actions? +
W workflow GitHub Actions dodaj krok: uses: php-actions/composer@v6 z with: command: install, php_version: "8.2", args: --no-dev --optimize-autoloader. Alternatywnie: jeśli deployjujesz przez SSH, dodaj krok ssh po deployu plików: cd /var/www/myapp && php composer.phar install --no-dev --optimize-autoloader. Flagi --no-dev (bez zależności developerskich) i --optimize-autoloader (classmap zamiast autoloading z pliku) są kluczowe na produkcji.

Szybkie przejście do ofert związanych z tym tematem

Wybraliśmy oferty i strony z kodami rabatowymi, które najczęściej pasują do tego scenariusza użycia.