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

Hosting pod Laravel w Polsce — wymagania, deploy i konfiguracja

Opublikowano: 8 kwietnia 2026 · Kategoria: Hosting

Krótka odpowiedź: Do Laravel wystarczy hosting współdzielony z PHP 8.2+, dostępem SSH i możliwością ustawienia document root na katalog public/ — taką konfigurację oferują np. LH.pl, CyberFolks, Zenbox i home.pl. VPS jest potrzebny dopiero przy kolejkach (queue workers), WebSockets lub Dockerze.

Minimalne wymagania hostingu dla Laravel

Wymaganie Minimalna wersja Uwagi
PHP 8.2+ Laravel 11 wymaga PHP 8.2. Laravel 10 — PHP 8.1+
Rozszerzenia PHP BCMath, Ctype, cURL, DOM, Fileinfo, JSON, Mbstring, OpenSSL, PDO, XML Większość hostingów ma je domyślnie włączone
Composer 2.x Przez SSH lub lokalnie z wgraniem vendor/
SSH Zalecany Potrzebny do artisan commands, migracji, Composer
Katalog public/ Dokument root domeny Domena musi wskazywać na public/, nie na root projektu
MySQL / PostgreSQL MySQL 8.0+ lub PostgreSQL 15+ Zależy od konfiguracji projektu
Pamięć PHP (memory_limit) 128 MB min, 256 MB zalecane Composer wymaga 512 MB podczas install

Krok po kroku: deploy Laravel na hosting współdzielony

1. Wgraj pliki projektu

Wgraj cały projekt (poza vendor/ i .env) do katalogu poza public_html, np. /home/user/laravel-app/. Katalog public_html/ (lub www/) będzie zawierał tylko zawartość public/.

2. Skonfiguruj dokument root domeny

Opcja A — symlink (przez SSH):

ln -s /home/user/laravel-app/public /home/user/public_html

Opcja B — .htaccess w public_html (jeśli symlink niedostępny):

Options -MultiViews -Indexes
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /laravel-app/public/$1 [L]

3. Zainstaluj zależności przez Composer

Przez SSH:

cd /home/user/laravel-app
composer install --no-dev --optimize-autoloader

4. Skonfiguruj plik .env

cp .env.example .env
php artisan key:generate
# Edytuj .env — ustaw DB_HOST, DB_DATABASE, DB_USERNAME, DB_PASSWORD

5. Uruchom migracje

php artisan migrate --force
php artisan storage:link

6. Zoptymalizuj Laravel pod produkcję

Przed pierwszym uruchomieniem na hostingu produkcyjnym warto włączyć cache konfiguracji, tras i widoków - na hostingu współdzielonym różnica w czasie odpowiedzi bywa odczuwalna, bo dysk (i czasem I/O) jest wolniejszy niż na dedykowanym serwerze:

php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan event:cache

Uwaga: po każdej zmianie w plikach .env lub tras musisz wyczyścić cache (php artisan config:clear), inaczej Laravel będzie używał starej, zbuforowanej konfiguracji - częsty błąd na hostingu współdzielonym, gdzie łatwo zapomnieć o tym kroku po edycji .env przez panel/FTP.

Najczęstsze błędy przy wdrażaniu Laravel na hostingu (i jak je naprawić)

Objaw Najczęstsza przyczyna Rozwiązanie
Biały ekran / 500 bez treści APP_DEBUG=false ukrywa realny błąd Tymczasowo ustaw APP_DEBUG=true w .env, sprawdź błąd, wróć do false przed publikacją (nigdy nie zostawiaj debug włączonego na produkcji)
„No application encryption key has been specified" Brak APP_KEY w .env Uruchom php artisan key:generate przez SSH po skopiowaniu .env.example do .env
„The stream or file ... could not be opened: Permission denied" Złe uprawnienia katalogów storage/ i bootstrap/cache/ chmod -R 775 storage bootstrap/cache (na współdzielonym hostingu czasem wymagane też ustawienie właściciela na użytkownika PHP-FPM)
Strona pokazuje kod PHP zamiast działać Domena wskazuje na root projektu, nie na public/ Ustaw document root na public/ (symlink lub .htaccess - patrz krok 2 wyżej)
Zmiany w .env „nie działają" Zbuforowana stara konfiguracja po config:cache php artisan config:clear, dopiero potem ponownie config:cache jeśli chcesz cache produkcyjny
Composer wywala „memory exhausted" Limit memory_limit PHP za niski (Composer potrzebuje ~512 MB podczas instalacji) php -d memory_limit=-1 composer.phar install lub podnieś memory_limit w panelu hostingu na czas instalacji

Hosting współdzielony vs VPS dla Laravel — kiedy co wybrać?

Funkcja / wymaganie Hosting współdzielony VPS
Typowa aplikacja Laravel (CRUD, API, strona) ✓ Wystarczy Możliwy, droższy
Laravel Queue Worker (asynchroniczne zadania) ✗ Brak trwałych procesów ✓ supervisor + artisan queue:work
Laravel Echo (WebSockets) ✗ Brak otwartych portów ✓ soketi lub Laravel Reverb
Laravel Scheduler (cron) ✓ Cron job co minutę ✓ Cron lub supervisor
Docker / Sail ✗ Niedostępny ✓ Pełna kontrola
Redis / Memcached cache Zależy od hosta (rzadko) ✓ Dowolna konfiguracja
Koszt miesięczny 20–60 PLN/msc 50–200 PLN/msc

Polskie hostingi przyjazne dla Laravel

Wskazówka: Przed zakupem hostingu zapytaj support czy: (1) można ustawić document root domeny na podekatalogu, (2) PHP CLI jest dostępne przez SSH, (3) Composer jest zainstalowany systemowo lub można go wgrać do katalogu projektu.

Porównanie hostingów pod Laravel — najważniejsze parametry

Hosting PHP 8.2+ SSH Composer Document root Typ
LH.pl ✓ (Standard+) ✓ DirectAdmin Współdzielony
CyberFolks ✓ (Standard+) Współdzielony
Zenbox Współdzielony
home.pl ✓ (wyższe plany) Współdzielony
Contabo VPS ✓ root ✓ pełna kontrola VPS

Dane na podstawie specyfikacji technicznych hostingodawców (sierpień 2026). Sprawdź aktualne plany bezpośrednio u dostawcy.

Najczęstsze pytania

Czy Laravel działa na hostingu współdzielonym?
Tak, Laravel może działać na hostingu współdzielonym pod warunkiem spełnienia wymagań: PHP 8.2+ z rozszerzeniami BCMath, Ctype, cURL, DOM, Fileinfo, JSON, Mbstring, OpenSSL, PCRE, PDO, Tokenizer, XML. Konieczny jest też dostęp do Composera (przez SSH lub wgranie vendor/ ręcznie). Główne ograniczenie: Laravel wymaga skierowania katalogu głównego domeny na `public/`, a nie na root projektu. Nie wszystkie hostingi to umożliwiają.
Jak skierować domenę na katalog public/ Laravel na hostingu?
Są 3 metody: (1) Symlink — stwórz link symboliczny `ln -s /home/user/laravel-app/public /home/user/public_html` przez SSH; (2) Przenieś zawartość public/ do public_html i zaktualizuj ścieżki w index.php; (3) .htaccess w public_html: `RewriteEngine On\nRewriteRule ^(.*)$ /laravel/public/$1 [L]`. Metoda zależy od możliwości hostingu. Na LH.pl i CyberFolks symlink przez SSH działa dobrze.
Kiedy Laravel wymaga VPS zamiast hostingu współdzielonego?
VPS jest konieczny gdy: (1) używasz kolejek (queues) z Laravel Queue Worker — shared hosting nie pozwala na trwałe procesy w tle; (2) używasz WebSockets (Laravel Echo + pusher/soketi) — wymaga otwartego portu i trwałego procesu; (3) duże obciążenie (1000+ jednoczesnych użytkowników) — shared hosting ma limity CPU/RAM; (4) używasz Docker lub własnej konfiguracji PHP-FPM. Dla typowej aplikacji Laravel (API, strona firmowa) hosting współdzielony z PHP 8.2+ i SSH wystarczy.
Jak uruchomić Composer na hostingu współdzielonym dla Laravel?
Opcja 1 (SSH): `ssh user@server "cd /home/user/laravel && composer install --no-dev --optimize-autoloader"`. Opcja 2 (bez SSH): uruchom `composer install` lokalnie i wgraj katalog `vendor/` przez FTP/SFTP. Nigdy nie wgrywaj vendor/ do repozytorium — dodaj do .gitignore. Opcja 3 (GitHub Actions): automatyczny deploy przez CI/CD z krokiem `composer install` na serwerze po push. Polskie hosty oferujące SSH: LH.pl (plan Standard+), CyberFolks, zenbox.
Dlaczego Laravel na hostingu pokazuje biały ekran lub błąd 500 bez treści?
Najczęstsza przyczyna to APP_DEBUG=false w .env, które ukrywa treść błędu. Tymczasowo ustaw APP_DEBUG=true, odśwież stronę i sprawdź realny komunikat (najczęściej to brak APP_KEY, złe uprawnienia storage/ i bootstrap/cache/, albo document root wskazujący na root projektu zamiast na public/). Po zdiagnozowaniu problemu wróć do APP_DEBUG=false - nigdy nie zostawiaj trybu debug włączonego na produkcji, bo ujawnia dane wrażliwe.
Jak zoptymalizować Laravel przed uruchomieniem na hostingu produkcyjnym?
Uruchom php artisan config:cache, route:cache, view:cache i event:cache po każdym deployu - to buforuje konfigurację, trasy i widoki, co odczuwalnie przyspiesza działanie na wolniejszym I/O hostingu współdzielonego. Ważne: po każdej zmianie w .env lub trasach musisz wykonać php artisan config:clear, inaczej aplikacja będzie korzystać ze starej, zbuforowanej konfiguracji.

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.