Symfony adalah framework PHP gratis, open-source, dan berkinerja tinggi yang dapat digunakan untuk membangun aplikasi web, API, layanan mikro, dan layanan web. Symfony memungkinkan Anda membuat aplikasi web tanpa coding yang monoton dan ekstensif. Symfony hadir dengan seperangkat alat yang membantu Anda menguji, men-debug, dan mendokumentasikan proyek. Symfony menggunakan pola desain Model-View-Controller dan bertujuan untuk mempercepat pembuatan dan pemeliharaan aplikasi web.
Dalam tutorial ini, kami akan menunjukkan cara menginstal Symfony 5 dengan Nginx di Debian 10.
Prasyarat
- Server yang menjalankan Debian 10.
- Kata sandi root dikonfigurasi di server Anda.
Memulai
Sebelum memulai, disarankan untuk memperbarui server Anda dengan versi terbaru menggunakan perintah berikut:
apt-get update -y
apt-get upgrade -y
Setelah server Anda diperbarui, mulai ulang untuk menerapkan perubahan.
Instal Nginx, MariaDB, dan PHP
Pertama, Anda perlu menginstal Nginx, MariaDB, PHP, dan pustaka lain yang diperlukan di server Anda. Anda dapat menginstal semuanya dengan perintah berikut:
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
Setelah semua paket diinstal, mulai layanan Nginx dan MariaDB dan aktifkan untuk memulai pada sistem reboot dengan perintah berikut:
systemctl start nginx
systemctl start mariadb
systemctl enable nginx
systemctl enable mariadb
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal Symfony 5
Pertama, Anda perlu menginstal Komposer di server Anda. Anda dapat mengunduh skrip instalasi Composer dengan perintah berikut:
wget https://getcomposer.org/installer
Selanjutnya, jalankan installer seperti gambar di bawah ini:
php installer
Setelah Komposer diunduh, Anda akan melihat output berikut:
All settings correct for using Composer Downloading... Composer (version 1.9.1) successfully installed to: /root/composer.phar Use it: php composer.phar
Selanjutnya, pindahkan Composer ke direktori /usr/local/bin dan buat agar dapat dieksekusi:
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer
Sekarang, ubah direktori ke /var/www/html dan instal Symfony 5 dengan perintah berikut:
cd /var/www/html
composer create-project symfony/skeleton symfony5
Selanjutnya, berikan izin yang tepat ke direktori symfony5 seperti yang ditunjukkan di bawah ini:
chown -R www-data:www-data /var/www/html/symfony5
chmod -R 755 /var/www/html/symfony5
Konfigurasi Nginx untuk Symfony 5
Selanjutnya, Anda perlu membuat file konfigurasi virtual host Nginx untuk Symfony 5. Anda dapat membuatnya dengan perintah berikut:
nano /etc/nginx/sites-available/symfony.conf
Tambahkan baris berikut:
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; }
Simpan dan tutup file setelah Anda selesai. Kemudian, aktifkan virtual host Nginx dengan perintah berikut:
ln -s /etc/nginx/sites-available/symfony.conf /etc/nginx/sites-enabled/
Selanjutnya, periksa Nginx apakah ada kesalahan sintaks dengan perintah berikut:
nginx -t
Anda akan melihat output berikut:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Terakhir, mulai ulang layanan Nginx untuk menerapkan perubahan:
systemctl restart nginx
Akses Symfony5
Symfony4 sekarang terinstal, Anda dapat mengaksesnya dengan mengunjungi URL http://your-server-ip di browser web Anda. Anda akan melihat halaman selamat datang Symfony 5:
Selamat! Anda telah berhasil menginstal Symfony5 di server Debian 10. Anda sekarang dapat meng-host aplikasi PHP apa pun menggunakan Symfony 5.