Symfony to potężny i elastyczny framework PHP, ale aby działał efektywnie, musi być odpowiednio skonfigurowany. W tym artykule krok po kroku wyjaśniamy, jak skonfigurować projekt Symfony, połączenie z bazą danych, środowiska (env), pamięć podręczną (cache) i zabezpieczenia.
Konfiguracja Symfony to proces ustawiania aplikacji tak, aby działała poprawnie w różnych środowiskach (deweloperskim, testowym, produkcyjnym). Dotyczy to plików środowiskowych, połączenia z bazą danych, zarządzania paczkami oraz bezpieczeństwa.
Symfony używa systemu plików .env
do zarządzania konfiguracją w różnych środowiskach. Po utworzeniu projektu powinien pojawić się plik .env
z podstawowymi ustawieniami.
APP_ENV=dev APP_SECRET=your_secret_key DATABASE_URL="mysql://user:password@127.0.0.1:3306/baza_danych"
Można tu ustawić:
APP_ENV
– określa, czy aplikacja działa w środowisku dev, test czy prod.APP_SECRET
– tajny klucz do haszowania danych.DATABASE_URL
– dane do połączenia z bazą danych.Symfony używa Doctrine jako ORM do zarządzania bazami danych. Aby ustawić połączenie z MySQL, należy edytować plik .env
tak jak poniżej:
DATABASE_URL="mysql://root:password@127.0.0.1:3306/mojabaza"
php bin/console doctrine:database:create php bin/console doctrine:migrations:migrate
Jeśli wszystko jest poprawnie skonfigurowane, baza danych zostanie utworzona i gotowa do użycia.
Symfony oferuje potężny SecurityBundle
, który pozwala ustawić uwierzytelnianie i autoryzację.
config/packages/security.yaml
:security: encoders: Symfony\Component\Security\Core\User\User: bcrypt providers: in_memory: memory: users: admin: password: '%env(ADMIN_PASSWORD)%' roles: ['ROLE_ADMIN'] firewalls: main: anonymous: true form_login: login_path: login check_path: login logout: path: logout
Ustawienia obejmują:
Pamięć podręczna (cache) znacząco zwiększa wydajność aplikacji Symfony. Można ją wyczyścić za pomocą:
php bin/console cache:clear
opcache.enable=1 opcache.memory_consumption=128 opcache.max_accelerated_files=4000
Symfony zawiera profiler, który pomaga diagnozować i debugować aplikację.
APP_ENV=dev
Podczas tworzenia aplikacji, możesz korzystać z Web Profiler
, który wyświetla się na dole strony w przeglądarce.
W pliku .env
zmień na APP_ENV=prod
i wyczyść cache:
php bin/console cache:clear --env=prod
Sprawdź wartość DATABASE_URL
w pliku .env
i użyj polecenia:
php bin/console doctrine:migrations:migrate
Użyj password_hash()
lub komponentu security Symfony.
Jeśli interesują Cię szkolenia stacjonarne lub online z programowania w PHP, sprawdź naszą ofertę na www.like-it.sk. Nasze kursy prowadzone są przez doświadczonych specjalistów, którzy pomogą Ci opanować Symfony – od podstaw po zaawansowane koncepcje.
Marián Knězek