Symfony#

Важно

Документация дорабатывается по мере развития продуктов Группы Астра и по пожеланиям пользователей.

Ваши пожелания и замечания направляйте на почту docs@astralinux.ru

Symfony — это высокопроизводительный фреймворк, написанный на PHP.

Основные пакеты

Пакет

Версия

Репозиторий

Описание

php

8.2+93+b1

installation

Язык разработки

php-curl

8.2+93+b1

installation

Модуль CURL для PHP

php-xml

8.2+93+b1

installation

Модуль DOM для PHP

Дополнительные пакеты

Пакет

Версия

Репозиторий

Описание

apache2

2.4.57-2+astra.se1+ci1+b2

installation

Веб-сервер

libapache2-mod-php8.2

8.2.24-1~deb12u1

installation

Модуль PHP для веб-сервера Apache 2

php8.2-xdebug

3.2.0

extended

Модуль отладки для PHP

php8.2-pgsql

8.2.24-1~deb12u1

installation

Модуль базы данных PostgreSQL

Автоматическая установка#

Использование 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 --full

Пункт 3#

  • скопировать шаблон:

sudo mv my_project_name /var/www/html/my_project_name

Настройка веб-сервера#

Встроенный веб-сервер#

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 a2ensite my_project_name.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

Пункт 4#

  • убедитесь, что веб-сервер имеет права на запись в директории /var/www/my_project_name/var.

Пункт 5#

Откройте ваш проект в браузере по адресу http://localhost (или по IP-адресу сервера).

Настройка базы данных#

Если вы используете базу данных, настройте подключение в файле .env:

Примечание

Установка и настройка Postgresql.

Настройка Kerberos аутентификации в ЕПП (без использования username и password).