Symfony#
Важно
Документация дорабатывается по мере развития продуктов Группы Астра и по пожеланиям пользователей.
Ваши пожелания и замечания направляйте на почту docs@astralinux.ru
Symfony — это высокопроизводительный фреймворк, написанный на PHP.
Основные пакеты
Пакет |
Версия |
Репозиторий |
Описание |
|---|---|---|---|
php |
|
main |
Язык разработки |
php-curl |
|
main |
Модуль CURL для PHP |
php-xml |
|
main |
Модуль DOM для PHP |
Дополнительные пакеты
Пакет |
Версия |
Репозиторий |
Описание |
|---|---|---|---|
apache2 |
|
main |
Веб-сервер |
libapache2-mod-php |
|
main |
Модуль PHP для веб-сервера Apache 2 |
php-xdebug |
|
extended |
Модуль отладки для PHP |
php-pgsql |
|
main |
Модуль базы данных PostgreSQL |
Примечание
Рекомендуемая версия Symfony для PHP 8.2 - 6.3 (LTS). Возможна установка 7.0.
Предварительная установка#
для корректной установки и работы Symfony требуется установить пакеты:
sudo apt install apache2 php php-curl php-xml git
Автоматическая установка#
Примечание
Если версия Symfony не указана явно, Composer установит последнюю совместимую с PHP.
Использование Composer#
Пункт 1#
установите Composer из репозитория:
sudo apt install composer
Пункт 2#
установите базовый шаблон:
composer create-project symfony/website-skeleton my_project_name
Пункт 3#
скопировать шаблон:
sudo mv my_project_name /var/www/html/my_project_name
Использование Symfony CLI#
Symfony CLI — это инструмент командной строки, который упрощает работу с Symfony.
Пункт 1#
curl -sS https://get.symfony.com/cli/installer | bash
sudo mv ~/.symfony5/bin/symfony /usr/local/bin/symfony
Примечание
Необходимо следовать рекомендациям после установки для использования из командной строки.
Пункт 2#
Теперь можно создать новый проект Symfony. Для этого выполните следующую команду:
symfony new my_project_name --webapp
Пункт 3#
скопировать шаблон:
sudo mv my_project_name /var/www/html/my_project_name
Пункт 4#
установить права на папку с проектом:
sudo chmod -R 775 /var/www/html/my_project_name/var/
Настройка веб-сервера#
Встроенный веб-сервер#
Symfony можно запустить с помощью встроенного веб-сервера:
Примечание
Если вы установили Symfony CLI
cd /var/www/html/my_project_name
symfony server:start
Теперь ваш проект будет доступен по адресу http://localhost:8000
Настройка веб-сервера Apache2#
Пункт 1#
создайте конфигурационный файл:
sudo nano /etc/apache2/sites-available/my_project_name.conf
Пункт 2#
добавьте следующий контент:
<VirtualHost *:80>
DocumentRoot /var/www/html/my_project_name/public
<Directory /var/www/html/my_project_name/public>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Пункт 3#
отключите сайт по умолчанию, активируйте сайт, включите
mod_rewriteи перезагрузите Apache2:
sudo a2dissite 000-default.conf
sudo a2ensite my_project_name.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
Пункт 4#
убедитесь, что веб-сервер имеет права на запись в директории
/var/www/html/my_project_name/var
sudo chmod -R 777 /var/www/html/my_project_name/var
Пункт 5#
Откройте ваш проект в браузере по адресу http://localhost (или по IP-адресу сервера).
Настройка базы данных#
Если вы используете базу данных, настройте подключение в файле .env:
Примечание
Установка и настройка Postgresql.
Настройка Kerberos аутентификации в ЕПП (без использования username и password).