Symfony è un framework PHP gratuito, open source e ad alte prestazioni che può essere utilizzato per creare applicazioni web, API, microservizi e servizi web. Symfony ti permette di creare applicazioni web senza una codifica monotona ed estensiva. Symfony viene fornito con una serie di strumenti che ti aiutano a testare, eseguire il debug e documentare i progetti. Symfony utilizza il modello di progettazione Model-View-Controller e mira a velocizzare la creazione e la manutenzione delle applicazioni web.
In questo tutorial, ti mostreremo come installare Symfony 5 con Nginx su Debian 10.
Prerequisiti
- Un server che esegue Debian 10.
- Sul tuo server è configurata una password di root.
Per iniziare
Prima di iniziare, si consiglia di aggiornare il server con l'ultima versione utilizzando il seguente comando:
apt-get update -y
apt-get upgrade -y
Una volta aggiornato il server, riavvialo per implementare le modifiche.
Installa Nginx, MariaDB e PHP
Innanzitutto, dovrai installare Nginx, MariaDB, PHP e altre librerie richieste sul tuo server. Puoi installarli tutti con il seguente comando:
apt-get install nginx mariadb-server php php-fpm php-common php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-bcmath php-soap php-ldap php-imap php-xml php-cli php-zip git unzip wget -y
Una volta installati tutti i pacchetti, avvia il servizio Nginx e MariaDB e abilita l'avvio al riavvio del sistema con il seguente comando:
systemctl start nginx
systemctl start mariadb
systemctl enable nginx
systemctl enable mariadb
Una volta terminato, puoi procedere al passaggio successivo.
Installa Symfony 5
Innanzitutto, dovrai installare il Composer sul tuo server. Puoi scaricare lo script di installazione di Composer con il seguente comando:
wget https://getcomposer.org/installer
Quindi, esegui il programma di installazione come mostrato di seguito:
php installer
Una volta scaricato il Composer, dovresti vedere il seguente output:
All settings correct for using Composer Downloading... Composer (version 1.9.1) successfully installed to: /root/composer.phar Use it: php composer.phar
Quindi, sposta il Composer nella directory /usr/local/bin e rendilo eseguibile:
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer
Ora, cambia la directory in /var/www/html e installa Symfony 5 con il seguente comando:
cd /var/www/html
composer create-project symfony/skeleton symfony5
Quindi, dai i permessi appropriati alla directory di symfony5 come mostrato di seguito:
chown -R www-data:www-data /var/www/html/symfony5
chmod -R 755 /var/www/html/symfony5
Configura Nginx per Symfony 5
Successivamente, dovrai creare un file di configurazione dell'host virtuale Nginx per Symfony 5. Puoi crearlo con il seguente comando:
nano /etc/nginx/sites-available/symfony.conf
Aggiungi le seguenti righe:
server { server_name your-server-ip; root /var/www/html/symfony5/public; location / { try_files $uri /index.php$is_args$args; } location ~ ^/index\.php(/|$) { fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; internal; } location ~ \.php$ { return 404; } error_log /var/log/nginx/symfony_error.log; access_log /var/log/nginx/symfony_access.log; }
Salva e chiudi il file quando hai finito. Quindi, abilita l'host virtuale Nginx con il seguente comando:
ln -s /etc/nginx/sites-available/symfony.conf /etc/nginx/sites-enabled/
Quindi, controlla Nginx per eventuali errori di sintassi con il seguente comando:
nginx -t
Dovresti vedere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Infine, riavvia il servizio Nginx per implementare le modifiche:
systemctl restart nginx
Accedi a Symfony5
Symfony4 è ora installato, puoi accedervi visitando l'URL http://your-server-ip sul tuo browser web. Dovresti vedere la pagina di benvenuto di Symfony 5:
Congratulazioni! hai installato con successo Symfony5 sul server Debian 10. Ora puoi ospitare qualsiasi applicazione PHP usando Symfony 5.