Błąd Smarty „Unable to write to cache directory” po migracji serwera.
To problem z uprawnieniami plików, a nie uszkodzony sklep. Po migracji serwera nowy serwer często uruchamia PHP pod innym użytkownikiem, podczas gdy skopiowane pliki nadal należą do starego konta albo do root. PrestaShop nie może wtedy zapisywać skompilowanych szablonów Smarty ani plików cache Symfony.

Najpierw wyczyść stare pliki cache, a potem popraw właściciela i uprawnienia dla zapisywalnych ścieżek cache/logów. Zastąp www-data:www-data użytkownikiem i grupą, których naprawdę używa Twój PHP-FPM albo serwer WWW, na przykład nginx:nginx albo użytkownikiem konta hostingowego.
Przed uruchomieniem chown ustal, jako jaki użytkownik faktycznie działa PHP. W powłoce z plikami sklepu przydatne kontrole to ps -eo user,group,comm | grep -E 'php-fpm|apache|nginx', grep -R '^user\|^group' /etc/php*/fpm/pool.d 2>/dev/null albo tymczasowa strona phpinfo() sprawdzona przez przeglądarkę. Użyj tego użytkownika/grupy zamiast zgadywać www-data.
cd /path/to/prestashop
# Remove generated cache contents, not the parent directories
find var/cache/prod -mindepth 1 -maxdepth 1 -exec rm -rf -- {} +
find var/cache/dev -mindepth 1 -maxdepth 1 -exec rm -rf -- {} +
# Fix common PS 1.7/8/9 writable paths
sudo chown -R www-data:www-data var 2>/dev/null || true
find var -type d -exec chmod 775 {} +
find var -type f -exec chmod 664 {} +
# Older PS 1.6-style Smarty paths, if they exist
sudo chown -R www-data:www-data cache/smarty 2>/dev/null || true
find cache/smarty -type d -exec chmod 775 {} + 2>/dev/null
find cache/smarty -type f -exec chmod 664 {} + 2>/dev/nullUnikaj chmod -R 777. Może tymczasowo ukryć błąd, ale zostawia sklep zapisywalny dla wszystkich na serwerze. Jeśli uprawnienia wyglądają poprawnie, a błąd pozostaje, sprawdź miejsce na dysku, wyczerpanie inode, polityki SELinux/AppArmor i to, czy PHP-FPM nie działa w chroot pod inną ścieżką.
Nasz poradnik migracji PrestaShop opisuje pełne przenoszenie sklepu, a poradnik rozwiązywania problemów obejmuje powiązane białe strony i błędy 500.
Czy ta odpowiedź była pomocna?
Masz jeszcze pytania?
Nie możesz znaleźć tego, czego szukasz? Wyślij nam pytanie, a odpowiemy.