Гид по технологиям

Установка Symfony на Linux

• 5 min read • Разработка • Обновлено 30 Nov 2025
Как установить Symfony на Linux
Как установить Symfony на Linux

Изображение: логотип Symfony и сайт

Symfony — один из лучших полнофункциональных PHP‑фреймворков. Его активно используют более 600 000 разработчиков. Symfony применяется в крупных проектах и сервисах, таких как Spotify, Dailymotion и Trivago. В этом руководстве показано, как установить Symfony на Linux и быстро создать первое приложение.

Содержание

  • Особенности Symfony
  • Требования перед установкой
  • Установка Symfony на Linux
  • Установка Symfony CLI
  • Установка Composer
  • Создание первого веб‑приложения
  • Отладка приложения
  • Чеклисты и шпаргалки
  • Частые проблемы и их решения
  • FAQ

Особенности Symfony

Symfony позволяет быстро разрабатывать сложные сайты, веб‑приложения и микросервисы. Это возможно благодаря набору готовых компонентов, модульной архитектуре и экосистеме инструментов.

Ключевые возможности:

  • Open source: быстрый, гибкий и хорошо документированный фреймворк.
  • Большое сообщество разработчиков, тестировщиков и интеграторов.
  • MVC‑архитектура (Model‑View‑Controller).
  • Множество переиспользуемых и раздельных компонентов.
  • Полнофункциональные классы для работы с базами данных.
  • Composer как менеджер зависимостей.
  • Чёткая структура директорий проекта.
  • Гибкий роутинг URI.
  • Управление кэшем и логирование ошибок.
  • Объектно‑ориентированная архитектура (OOP).

Важно: Symfony совместим с современными версиями PHP. В примерах ниже используется PHP 8.2, но можно установить более новую версию, если это поддерживается вашей ОС и расширениями.

Требования перед установкой

Перед установкой Symfony нужно подготовить систему: добавить репозитории PHP (если требуется) и установить PHP с набором расширений. Ниже — команды для Debian/Ubuntu и Fedora. Выполняйте команды с правами sudo.

# Debian/Ubuntu
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php

# Fedora (пример для Fedora 38 и совместимых)
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
sudo dnf install https://rpms.remirepo.net/fedora/remi-release-$(rpm -E%fedora).rpm -y
sudo dnf module enable php:remi-7.4 -y

Добавление репозитория PHP в дистрибутив Linux

После добавления репозиториев обновите списки пакетов и установите PHP 8.2 вместе с необходимыми зависимостями:

# Debian/Ubuntu
sudo apt update
sudo apt install php php-cli php-common php-xml libpcre3 git zip unzip -y

# Fedora
sudo dnf update
sudo dnf install php8.2 php8.2-cli php8.2-common php8.2-xml libpcre3 git zip unzip -y

Установка PHP и зависимостей

Проверьте установленную версию PHP:

php -v

Примечание: если в вашем окружении требуются дополнительные расширения (pdo_mysql, mbstring, intl и т.д.), установите их заранее через менеджер пакетов.

Установка Symfony на Linux

Для удобной работы с проектами Symfony установите Symfony CLI и Composer. Symfony CLI облегчает создание и запуск приложений. Composer управляет зависимостями PHP.

Установка Symfony CLI

Скачайте и установите Symfony CLI через wget или curl:

# Установка Symfony через wget
wget https://get.symfony.com/cli/installer -O - | bash

# Установка Symfony через curl
curl -sS https://get.symfony.com/cli/installer | bash

Установка Symfony CLI

Добавьте Symfony в переменную окружения PATH и подгрузите изменения:

export PATH="$HOME/.symfony5/bin:$PATH"
source ~/.bashrc

После этого команда symfony станет доступна в текущем терминале.

Установка Composer

Скачайте установщик Composer, проверьте контрольную сумму и установите Composer. В этом примере используется заранее известная хеш‑сумма для проверки (сохраните ту, что подходит вашей версии):

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php
php -r "unlink('composer-setup.php');"

Установка Composer

Проверьте готовность окружения для разработки Symfony:

symfony check:req

Проверка требований Symfony

В выводе вы увидите, удовлетворены ли требования (PHP, расширения, права и т.д.). Исправьте пункты, помеченные как требующие внимания.

Создание первого веб‑приложения

Перед созданием проекта полезно настроить git:

git config --global user.email "email_address"
git config --global user.name "full_name"

Замените email_address и full_name на свои данные.

Создайте веб‑приложение (пакет webapp содержит шаблоны для типичного сайта) или микросервис/API:

# Веб‑приложение
symfony new --webapp mte

# Микросервис / API
symfony new mte

Создание веб‑приложения Symfony

Перейдите в директорию проекта и запустите встроенный сервер:

cd mte/
symfony server:start

Запуск встроенного сервера Symfony

По умолчанию сервер слушает на http://127.0.0.1:8000. Откройте этот адрес в браузере, чтобы увидеть приветственную страницу Symfony.

Страница приветствия Symfony в браузере

Теперь можно начать разработку первой страницы и компонентов приложения.

Отладка приложения

Symfony содержит встроенные инструменты отладки, например Profiler и Web Debug Toolbar. Для расширенной отладки подключите сторонние инструменты или расширения, например Xdebug.

Короткий чек: как включить Xdebug для разработки

# Установите Xdebug (пример для Debian/Ubuntu)
sudo apt install php-xdebug -y
# Перезапустите веб‑сервер или php-fpm
sudo systemctl restart apache2
# Проверьте наличие расширения
php -v | grep Xdebug

Profiler отображает запросы, время выполнения, использование памяти, запросы к БД и т.д. Используйте эти данные для оптимизации.

Чеклисты и шпаргалки

Рольовые чеклисты перед запуском проекта:

  • Разработчик:

    • Установлены PHP и расширения (pdo_mysql, mbstring, intl).
    • Установлен Composer и зависимости проекта.
    • Локальный dev‑сервер запускается успешно.
  • DevOps / Системный администратор:

    • Настроен веб‑сервер (NGINX/Apache) для продакшена.
    • Настроены права на директории var и vendor.
    • Настроено резервное копирование и мониторинг.
  • QA / Тестировщик:

    • Настроены тестовые окружения и CI.
    • Запущены unit и functional тесты.

Шпаргалка команд (часто используемые):

# Создать проект
symfony new --webapp myproject

# Запустить сервер
cd myproject
symfony server:start

# Установить зависимость через Composer
composer require package/name

# Проверить требования
symfony check:req

# Отладка
symfony server:log

Факт‑бокс: ключевые числа

  • Сообщество: более 600 000 разработчиков.
  • Минимальная рекомендуемая версия PHP: 8.0+ (в примерах — 8.2).
  • Компоненты Symfony можно использовать отдельно в любых PHP‑проектах.

Частые проблемы и их решения

  1. Ошибка: «Missing PHP extension» — установите требуемое расширение через apt/dnf и перезапустите PHP.
  2. symfony: команда не найдена — убедитесь, что путь к бинарнику добавлен в PATH и вы перезапустили shell.
  3. Composer зависает при установке — проверьте доступ к packagist.org и настройки proxy/SSL.
  4. Права на директории — убедитесь, что web‑сервер имеет права на папки var и vendor.

Критерии приёмки

  • Проект собирается без ошибок: composer install проходит успешно.
  • Встроенный сервер запускается и возвращает 200 OK для корня сайта.
  • Инструменты отладки показывают работоспособность (Profiler доступен).

Альтернативы и когда Symfony не подходит

  • Microframework (например Slim, Silex) подойдёт для очень лёгких API.
  • Для проектов с узкоспециализированной архитектурой можно выбрать Laravel (более «opinionated») или чистые PSR‑совместимые компоненты.
  • Если требуется минимальный оверхед и высокая производительность для простого API, рассмотрите инструменты на базе Swoole.

Mermaid: быстрая схема выбора шаблона проекта

flowchart TD
  A[Нужен сайт с шаблонами и страницами?] -->|Да| B[Использовать --webapp]
  A -->|Нет| C[Нужен API/микросервис?]
  C --> D[Использовать базовый шаблон]

FAQ

Как проверить, что Symfony CLI действительно установлен?

Выполните symfony -v. Команда вернёт версию CLI.

Какая версия PHP нужна для Symfony?

Symfony поддерживает современные версии PHP. Рекомендуется использовать PHP 8.0 и выше; в руководстве приведён пример с PHP 8.2.

Заключение

Symfony — мощный и гибкий фреймворк для веб‑разработки на PHP. Установка на Linux включает подготовку репозиториев, установку PHP и расширений, установку Symfony CLI и Composer, создание проекта и запуск встроенного сервера. Следуйте чеклистам для ролей и используйте инструменты отладки для повышения качества кода.

Image credit: Nimrach Chaudhry. All alterations and screenshots by Nimrah Chaudhry.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро