Skip to content
Follow
Ubuntu Linux

How to Install Symfony 5 with Nginx on Ubuntu Linux

Richard
Written by
Richard
Jan 13, 2020 Updated Sep 15, 2026 4 min read
How to Display Seconds on Ubuntu Top Menu Clock
How to Display Seconds on Ubuntu Top Menu Clock

Symfony 5 is a free PHP framework (a collection of pre-made code blocks) that helps you build websites and web apps faster. Pairing it with Nginx, a high-performance web server, gives you a fast and reliable hosting environment for your projects on Ubuntu Linux.

Advertisement

This guide covers the exact steps to install Symfony version 5.4 or newer on an Ubuntu server so you can start writing code right away.

⚡ Quick Answer

Install Nginx using `sudo apt install nginx`, then PHP 7.2-FPM and modules with `sudo apt install php7.2-fpm`. Download Symfony using Composer and configure Nginx by creating a new site file in `/etc/nginx/sites-available/`.

Advertisement

Install Nginx HTTP Server

To install Nginx on Ubuntu for your Symfony project, open your terminal and update your local package list by running sudo apt update. Next, install the Nginx web server by running the command sudo apt install nginx. Once the installation finishes, Nginx starts automatically and acts as the web server for your new Symfony application.

sudo apt update
sudo apt install nginx

After installing Nginx, the commands below can be used to stop, start, and enable the Nginx service to always start up with the server boots.

sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Now that Nginx has been installed, browse your browser to the URL below to test whether the web server works.

http://localhost
nginx default home page test
nginx default page

If you see the page above, then Nginx is successfully installed.

Advertisement

To install PHP 7.2-FPM and the required modules for Symfony on Ubuntu, add the Ondřej Surý PHP repository to your system sources if your default repositories do not have version 7.2. Run sudo apt-get install software-properties-common followed by sudo add-apt-repository ppa:ondrej/php, and then proceed to install PHP 7.2-FPM along with your needed extensions.

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Then update and upgrade to PHP 7.2-FPM

sudo apt update

Next, run the commands below to install PHP 7.2-FPM and related modules.

sudo apt install php7.2-fpm php7.2-common php7.2-sqlite3 php7.2-mysql php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-ldap php7.2-gd php7.2-bcmath php7.2-xml php7.2-cli php7.2-zip

After installing PHP 7.2-FPM, run the commands below to open Nginx's PHP default configuration file.

Advertisement
sudo nano /etc/php/7.2/fpm/php.ini

The lines below are a good setting for most PHP-based CMS. Update the configuration file with these and save.

file_uploads = On
allow_url_fopen = On
short_open_tag = On
cgi.fix_pathinfo = 0
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago

Restarting the Nginx web server whenever you change the PHP configuration file would be best. To do so, run the commands below:

sudo systemctl restart nginx.service

Download Symfony's Latest Release

To download Symfony's latest release on your Ubuntu machine, you first need to install Composer, which is the dependency manager for PHP projects. Start by installing the required tools and curl utility on your system using the terminal command sudo apt install curl git, and then follow the official installer steps to set up Composer globally.

To install Composer on Ubuntu, run the commands below:

Advertisement
sudo apt install curl git
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

After installing Composer above, change the Nginx home directory and download Symfony packages into a new project folder called symfony5.

cd /var/www/
sudo composer create-project symfony/skeleton symfony5
⚠️WarningThen, run the commands below to set the correct permissions for the Symfony root directory and give Nginx control.
sudo chown -R www-data:www-data /var/www/symfony5/
sudo chmod -R 755 /var/www/symfony5/

Configure Nginx

To configure Nginx for a Symfony 5 project on Ubuntu, create a new server block configuration file inside the sites-available directory. Open your terminal and run the command sudo nano /etc/nginx/sites-available/symfony, then paste your domain name, document root pointing to your project public folder, and PHP-FPM socket settings.

sudo nano /etc/nginx/sites-available/symfony
⚠️WarningThen copy and paste the content below into the file and save it.

Replace the highlighted line with your domain name and directory root location.

Advertisement
server {
    listen 80;
    listen [::]:80;

    server_name  example.com www.example.com;
    root   /var/www/symfony5/public;
    index  index.php;
    
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    client_max_body_size 100M;
  
    autoindex off;

    location / {
    try_files $uri /index.php$is_args$args;
      }

    location ~ .php$ {
         include snippets/fastcgi-php.conf;
         fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
         include fastcgi_params;
         fastcgi_intercept_errors on;
    }
}

Save the file and exit.

Enable the Symfony

To enable your Symfony site in Nginx on Ubuntu, create a symbolic link from your configuration file in sites-available to the sites-enabled directory by running sudo ln -s /etc/nginx/sites-available/symfony /etc/nginx/sites-enabled/. After creating the link, test your configuration for syntax errors and restart the web server with sudo systemctl restart nginx.service to apply the changes.

sudo ln -s /etc/nginx/sites-available/symfony /etc/nginx/sites-enabled/
sudo systemctl restart nginx.service

Then, open your browser and browse to the host's domain name or server IP address. You should then see the Symfony 5 homepage.

http://example.com/
Symfony Ubuntu Install
symfony ubuntu install

Symfony 5 framework application is now ready, and you can start working on it.

Advertisement

Conclusion:

This post shows you how to install the Symfony 5 framework on Ubuntu 18.04 | 16.04. If you find any error, please report it in the comment form below.

You may also like the post below:

Was this guide helpful?

Was this helpful?
Richard

About the Author

Richard

Tech Writer, IT Professional

Richard, a writer for Geek Rewind, is a tech enthusiast who loves breaking down complex IT topics into simple, easy-to-understand ideas. With years of hands-on experience in system administration and enterprise IT operations, he’s developed a knack for offering practical tips and solutions. Richard aims to make technology more accessible and actionable. He's deeply committed to the Geek Rewind community, always ready to answer questions and engage in discussions.

Advertisement

📚 Related Tutorials

How to Install Nginx on Ubuntu Linux
Ubuntu Linux How to Install Nginx on Ubuntu Linux
How to Install PHP Composer on Ubuntu Linux
Ubuntu Linux How to Install PHP Composer on Ubuntu Linux
How to Install Let's Chat on Ubuntu Linux
Ubuntu Linux How to Install Let's Chat on Ubuntu Linux
Change Power Button Behavior in Ubuntu Linux
Ubuntu Linux Change Power Button Behavior in Ubuntu Linux

0 Comments

Leave a Comment

Your email address will not be published. Required fields are marked *