Menjalankan Multi PHP di Ubuntu Dengan PHP-FPM

Menjalankan Multi PHP di Ubuntu Dengan PHP-FPM

Dalam contoh kasus pada ubuntu 22 atau linux secara umum, kita hanya bisa menjalankan satu versi php sehingga terkadang ini menjadi masalah tersendiri terutama jika memang projek – projek web kita sendiri miliki requirement versi php yang berbeda untuk setiap projeknya. 

Untuk mengatasi permasalahan ini, kita bisa menggunakan berbagai macam metode tetapi dalam tutorial ini saya akan menggunakan PHP-FPM, dimana nantinya kita dapat mengelola multiple versi php dalam satu single instance atau dengan  kata lain nantinya kita bisa menjalankan beberapa versi php yang berbeda – beda secara bersamaan untuk setiap projek php yang berada pada komputer yang sama

PHP-FPM (FastCGI Process Manager) merupakan implementasi utama FastCGI PHP yang memiliki beberapa fitur yang berguna untuk situs dengan beban berat.

INFO

Sebelum ketahap instalasi saya ingin menjelaskan terlebih dahulu beberapa hal seperti :
  1. Saya menggunakan ubuntu 22
  2. Pada ubuntu 22 yang saya gunakan tentunya secara default sudah terinstall Apache Web Server
  3. Kemudian disini sebelumnya bahwa saya sudah pernah menginstall php dengan versi 8.2 sebagai default php yang digunakan pada ubuntu dimana lokasi default direktorynya berada di var/www/html

STUDI KASUS

Jadi nantinya akan berada dua projek web yang menjalankan versi php yang berbeda :
  1. Projek pertama nantinya akan berada di http://php7.test
  2. Lalu yang kedua berada di http://php81.test
RANGKUMAN INSTALASI
  1. Kita akan menginstal php7.4-fpm dan 8.1-fpm termasuk didalamnya untuk integrasi dengan mysql dan modul apache untuk FastCGI
  2. Selanjutnya mengaktifkan Module Supaya Service Apache dapat menjalankan beberapa versi php
  3. Kemudian kita perlu membuat direktori kerja kita pada /var/www/ dan melakukan konfigurasi VirtualHost pada /etc/apache2/sites-available dan /etc/hosts untuk dua projek dengan alamat yang sudah disebutkan pada STUDI KASUS diatas
       
 Setelah penjelasn – penjelasn diatas Anda baca, selanjutnya kita akan melangkah pada tahp pertama yaitu instalasi paket php 7.4 dan 8.1 dengan php fpm

 #1 INSTALASI MULTI PHP 

Langkah pertama kita install terlebih dahulu software properties common dengan perintah berikut :
sudo apt install software-properties-common -y 
Kemudian Anda perlu menambahkan repositori ondrej/php kedalam sistem supaya Anda dapat menginstall beberapa versi php
sudo add-apt-repository ppa:ondrej/php
Lalu lakukan update
sudo apt update
Selanjutnya kita instal php7.4 / 8.1 dan extensionnya dengan perintah berikut

sudo apt-get install php7.4 php7.4-fpm php7.4-mysql libapache2-mod-php7.4 libapache2-mod-fcgid -y

sudo apt-get install php8.1 php8.1-fpm php8.1-mysql libapache2-mod-php8.1 libapache2-mod-fcgid -y
Kemudian jalankan dan lihat status keduanya
sudo systemctl start php7.4-fpm
Untuk melihat status dari php 7.4 yang sudah diaktifkan, Anda dapat menuliskan perintah berikut :
sudo systemctl status php7.4-fpm
output : 


 php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor pr>
     Active: active (running) since Mon 2024-04-01 16:00:02 WIB; 5s ago
       Docs: man:php-fpm7.4(8)
    Process: 31488 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /ru>
   Main PID: 31485 (php-fpm7.4)
     Status: "Ready to handle connections"
      Tasks: 3 (limit: 18958)
     Memory: 7.1M
        CPU: 33ms
     CGroup: /system.slice/php7.4-fpm.service
             ├─31485 "php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)" >
             ├─31486 "php-fpm: pool www" "" "" "" "" "" "" "" "" "" "" "" "" "">
             └─31487 "php-fpm: pool www" "" "" "" "" "" "" "" "" "" "" "" "" "">

Apr 01 16:00:02 root93-hp systemd[1]: Starting The PHP 7.4 FastCGI Process Mana>
Apr 01 16:00:02 root93-hp systemd[1]: Started The PHP 7.4 FastCGI Process Manag>
lines 1-17/17 (END)



 #2 MENGAKTIFKAN MODUL 

 Selanjutnya kita perlu mengaktifkan modul yang sudah diinstall sebelumnya supaya service apache dapat bekerja dengan beberapa versi php didalamnya
sudo a2enmod actions fcgid alias proxy_fcgi
Selanjutnya restart apache dengan perintah
sudo service apache2 restart


#3 PENGATURAN PROJEK 

Pengaturan projek ini terdiri dari pembuatan direktori kerja untuk setiap projeknya dalam hal ini yaitu php7.test dan php81.test kemudian melakukan konfigurasi VirtualHost dan mengedit file hosts pada konfigurasi /etc/ Pertama buat direktori untuk masing – masing projeknya

sudo mkdir /var/www/php7.test
sudo mkdir /var/www/php81.test

sudo chown -R www-data:www-data /var/www/php7.test
sudo chown -R www-data:www-data /var/www/php8.test
Selanjutnya buat file index.php untuk masig – masing folder projek Anda pada php7.test dan php81.test
sudo nano /var/www/php7.test/index.php
Selanjutnya isi index.php dengan script untuk menampilkan info php seperti berikut

 <?php phpinfo(); ?>


Ulangi langkah yang sama untuk file pada php81.test Kemudian selanjutnya kita perlu melakukan konfigurasi apache atau dalam hal ini membuat sebuah virtualhost untuk setiap projeknya
sudo nano /etc/apache2/sites-available/php7.test.conf
Pada file php7.test.conf yang dibuat tersebut isi dengan script berikut : 


                                                                                                                          
<VirtualHost *:80>
        ServerAdmin admin@php7.test
        ServerName php7.test
        DocumentRoot /var/www/php7.test
        DirectoryIndex index.php

        <Directory /var/www/php7.test>
                Options Indexes FollowSymlinks MultiViews
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>
        <FilesMatch \.php$>
                SetHandler "proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost"
        </FilesMatch>
        ErrorLog ${APACHE_LOG_DIR}/php7.test_error.log
        CustomLog ${APACHE_LOG_DIR}/php7.test_access.log combined
</VirtualHost>



 Ulangi langkah yang sama untuk konfigurasi pada projek dengan versi php 8.1 atau supaya lebih mudah, salin file konfigurasi apache sebelumnya dengan perintah berikut :
sudo cp /etc/apache2/sites-available/php7.test.conf /etc/apache2/sites-available/php81.test.conf
Kemudian setelah di copy, Anda tinggal rubah/edit konfigurasi, sesuaikan direktory datanya ke php81.test Selanjutnya kita cek apakah konfigurasinya sudah sesuai atau belum :
sudo apachectl configtest
output
Syntax OK
Selanjutnya kita aktifkan konfigurasi yang sudah dibuat sebelumnya :

sudo a2ensite php7.test
sudo a2ensite php81.test
Selanjutnya restart apachenya
sudo systemctl restart apache2
Terakhir kita tambahkan domain dari konfigurasi apache yang kita buat ke /etc/hosts
sudo nano /etc/hosts

127.0.0.1       php7.test
127.0.0.1       php81.test
Silahkan selanjutnya Anda tinggal menguji cobanya pada browser dengan mengakses masing – masing domain yaitu : http://php7.test http://php81.test Jika berhasil nanti setiap projeknya akan menampilkan versi php yang berbeda. Jika browser Anda menampilkan default pagenya Apache, silahkan bersihkan cache Anda atau akses domainnya menggunakan mode samaran. 

Jadi kurang lebih seperti itulah bagaimana menjalankan multi php di ubuntu dengan php-fpm, apache dan virtual host. Jika Anda mengalami masalah atau memiliki pertanyaan, silahkan tulis saja pada kolom komentar

Rangkuman Perintah - Perintah


sudo apt install software-properties-common -y 
sudo add-apt-repository ppa:ondrej/php
sudo apt-get install php7.4 php7.4-fpm php7.4-mysql libapache2-mod-php7.4 libapache2-mod-fcgid -y
sudo apt-get install php8.1 php8.1-fpm php8.1-mysql libapache2-mod-php8.1 libapache2-mod-fcgid -y
sudo systemctl start php7.4-fpm 
sudo systemctl status php7.4-fpm
sudo a2enmod actions fcgid alias proxy_fcgi
sudo mkdir /var/www/php7.test
sudo mkdir /var/www/php81.test
sudo chown -R www-data:www-data /var/www/php7.test
sudo chown -R www-data:www-data /var/www/php8.test
sudo nano /etc/apache2/sites-available/php7.test.conf
sudo cp /etc/apache2/sites-available/php7.test.conf /etc/apache2/sites-available/php81.test.conf
sudo apachectl configtest
sudo a2ensite php7.test
sudo a2ensite php81.test
sudo systemctl restart apache2




0 Response to "Menjalankan Multi PHP di Ubuntu Dengan PHP-FPM"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin

nagabet76slot gacorslot online1213141516Slot Online Menghadirkan Pengalaman Digital Yang Didukung Pemrosesan Data Secara Real TimeMahjongways Menganalisis Pola Visual Dan Dinamika Simbol Berdasarkan Pemrosesan Data DigitalMahjongways Mengembangkan Dinamika Permainan Melalui Pengelolaan Data Dan Elemen Visual TerintegrasiAnalisis Komputasi Modern Membantu Memetakan Dinamika Sistem Digital Berdasarkan Data ObservasiMember Baru Mendorong Dinamika Komunitas Digital Menuju Pengalaman Yang Lebih Aktif Dan Menarikslot onlinemahjongwayasarsitektur layananpemrosesan data adaptifmember baruSlot Online Terbaru Menghadirkan AnalisisScatter Hitam Dianalisis Melalui PemetaanPola Scatter Hitam Membentuk Distribusi Visual Yang Dapat Dikaji Menggunakan Komputasi AdaptifArsitektur Teknologi TerdistribusiTeknologi Visualisasi DataMahjongways Mengembangkan Interaksi Visual Melalui Integrasi Simbol Digital Yang DinamisAnalisis Mahjongways Memetakan Dinamika Visual Dan Respons Antarmuka Berbasis DataScatter Hitam Dianalisis Melalui Pemetaan Struktur Simbol Digital Berbasis Komputasi AdaptifAlgoritma Scatter Hitam Membantu Mengidentifikasi Dinamika Pola Melalui Analisis Data ObservasiPg Soft Mengembangkan Sistem Rendering Adaptif Untuk Mendukung Visualisasi Digital ModernTeknologi Pg Soft Mengoptimalkan Pemrosesan Grafis Melalui Arsitektur Rendering TerintegrasiTeknologi Pemodelan Data Membantu Menganalisis Dinamika Informasi Pada Ekosistem Digital ModernArsitektur Komputasi Terdistribusi Meningkatkan Keandalan Pengelolaan Data Pada Platform DigitalTeknologi Kecerdasan Komputasional Mendorong Pengembangan Sistem Digital Yang Lebih AdaptifPemrosesan Data Modern Membantu Memetakan Pola Informasi Melalui Pendekatan Komputasi TerukurTeknologi Integrasi Data Mempermudah Sinkronisasi Informasi Dalam Lingkungan Digital TerpaduVisualisasi Komputasi Modern Membantu Menginterpretasikan Perubahan Pola Pada Sistem Digital KompleksTeknologi Otomasi Data Meningkatkan Efisiensi Pengelolaan Informasi Pada Infrastruktur DigitalModel Komputasi Adaptif Mendukung Pengembangan Teknologi Digital Melalui Analisis Data BerkelanjutanPengembangan Pg Soft Mengintegrasikan Teknologi Rendering Dengan Interaksi Visual Yang ResponsifPg Soft Menerapkan Komputasi Visual Untuk Meningkatkan Efisiensi Pengolahan Elemen DigitalEksplorasi Scatter Hitam Memetakan Distribusi Simbol Melalui Model Analitik Digital TerintegrasiPola Scatter Hitam Dikaji Menggunakan Pendekatan Visualisasi Data Dan Pemodelan StatistikMahjongways Menghadirkan Pendekatan Visual Interaktif Melalui Pemrosesan Simbol Yang AdaptifEksplorasi Mahjongways Mengungkap Perubahan Pola Visual Dalam Lingkungan Digital Terintegrasiai kasino online dan perdebatan teknologi prediksi digitalkecerdasan buatan menelaah perubahan industri kasino onlinekasino online dalam sorotan otomatisasi dan analisis datamengenal batas penggunaan ai pada kasino digitalteknologi ai membuka diskusi baru seputar game kasinoantara algoritma dan peluang dalam kasino onlineai kasino digital dari perspektif etika dan keamananmembaca fenomena kasino online melalui analisis komputasibenarkah ai bisa memprediksi hasil kasino onlinemasa depan kasino digital di tengah perkembangan aitren mahjong bergerak dari simbol klasik ke visual modernmahjong digital dan munculnya gaya ilustrasi barumengapa tema mahjong kembali menarik perhatian publiktren mahjong dalam catatan komunitas hiburan internetdesain mobile memberi arah baru pada tema mahjongmahjong dan pertemuan budaya tradisional dengan teknologimembaca popularitas mahjong lewat perubahan estetika gamemedia digital mengamati pergeseran tren permainan mahjongsimbol bersejarah menjadi inspirasi tren mahjong modernfenomena mahjong dan kreativitas dalam budaya digitalmahjong ways dan sweet bonanza dalam tren game digitalfortune tiger dan gates of olympus jadi bahasan komunitas gamemahjong ways 2 dan starlight princess dari sisi visualfortune ox dan big bass bonanza dalam ulasan game onlinemahjong wins dan wild west gold mengusung tema berbedafortune rabbit dan sugar rush dalam dunia game mobilemahjong treasure dan sweet bonanza menarik perhatian pengamatfortune mouse dan gates of gatot kaca dengan identitas unikmahjong cash dan the dog house dalam perbandingan desainfortune dragon dan joker jewels dari perspektif animasiqris pg soft dan arah baru transaksi game digitalmengenal peran qris pada pembayaran layanan gamepg soft dalam pembahasan sistem pembayaran elektroniktransaksi digital pg soft dilihat dari sisi keamanantren qris dan perubahan ekosistem game onlinesebelum memindai qris pahami verifikasi pembayaranpembayaran qris dan identitas layanan game pg softcatatan digital mengenai qris dalam industri gamememahami batas keamanan transaksi qris pg softqris dan pg soft dalam lanskap hiburan interaktifmahjong online dan pembayaran qris dalam sorotan digitalmembahas qris di tengah tren mahjong onlinesistem pembayaran elektronik pada layanan mahjong onlineqris mahjong online dan pentingnya konfirmasi transaksiperubahan metode bayar dalam ekosistem mahjong digitalmenelusuri kaitan mahjong online dengan teknologi qriskeamanan transaksi qris saat mengakses layanan gamemahjong online dilihat dari perspektif pembayaran modernapa yang perlu diketahui soal qris mahjong onlinepembayaran qris dan literasi digital pengguna mahjongalgoritma mahjong dan logika di balik game digitalmembaca peran sistem acak dalam permainan mahjongmahjong digital dalam tinjauan peluang dan probabilitasmitos pola algoritma mahjong yang perlu dipahamicara kerja rng dalam permainan mahjong onlineanalisis data bukan jaminan hasil game mahjongalgoritma game dan batas prediksi hasil permainanmemahami statistik di balik sistem mahjong digitalpola visual mahjong dan perbedaan dengan peluangteknologi permainan mahjong dari sisi logika komputasiai mahjong online dan perkembangan teknologi interaktifkecerdasan buatan menjadi topik baru dalam game mahjongmahjong online dalam analisis teknologi ai terkinimenelaah penggunaan ai pada permainan berbasis digitalai dan perubahan pengalaman pengguna mahjong onlinebisakah ai memprediksi hasil mahjong onlinemahjong digital dan batas kemampuan analisis kecerdasan buatanteknologi ai mengubah cara game online dikajimengenal data dan pembelajaran mesin dalam game mahjongai mahjong online antara analisis data dan mitos prediksiprediksi mahjong online dan batas analisis peluangmembaca statistik mahjong tanpa mengabaikan faktor acakmahjong dan mitos prediksi hasil di komunitas digitalbisakah data membantu menganalisis permainan mahjongprediksi mahjong dari sudut pandang probabilitas digitalpola visual mahjong bukan jaminan hasil permainanteknologi rng dan keterbatasan prediksi game mahjongmengenali perbedaan analisis data dan tebakan mahjongfenomena prediksi mahjong dalam perbincangan pengguna internetmengulas peluang mahjong dengan pendekatan statistikmengenal aturan dasar dan susunan tile permainan mahjongcara memahami kombinasi tile dalam permainan mahjongmahjong untuk pemula mengenali simbol dan alur permainanlangkah awal mempelajari strategi dasar mahjongpanduan memahami giliran dan kombinasi dalam mahjongbelajar mahjong dari pengenalan tile hingga aturan menangkesalahan pemula saat mempelajari permainan mahjongmengenal perbedaan mahjong tradisional dan versi digitalcara membaca simbol dan menyusun kombinasi tile mahjongdasar permainan mahjong yang perlu dipahami pemain barukasino online dalam sorotan perkembangan hiburan berbasis internetmemahami sistem acak dan peluang di kasino onlinekasino digital dan tantangan keamanan transaksi elektronikmenelusuri dampak sosial fenomena kasino onlineteknologi di balik perubahan layanan kasino onlinekasino online dari perspektif regulasi dan literasi digitalrisiko finansial yang perlu dikenali dalam kasino onlinemedia digital mengulas perkembangan industri kasino onlineantara teknologi dan perlindungan pengguna kasino onlinemengenali mitos peluang menang dalam kasino berbasis internetjudi online dan tantangan literasi digital masyarakatmenelaah pengaruh judi online terhadap kebiasaan keuanganfenomena judi online dalam perbincangan media nasionaldi balik promosi judi online kenali risiko yang munculjudi online dan pentingnya kesadaran terhadap keuangan pribadimembahas peran media sosial dalam penyebaran judi onlinegenerasi muda dan ancaman paparan konten judi onlinemengenali modus penipuan yang mengatasnamakan judi onlinejudi online dalam tinjauan dampak sosial dan keluargaliterasi internet menjadi bekal menghadapi risiko judi onlineberita terkini mahjong online menjadi sorotan pengguna digitalfenomena mahjong online kembali mewarnai pemberitaan gamemedia digital mengulas perubahan tren mahjong onlinemahjong online dan perbincangan baru di komunitas internetperkembangan mahjong online masuk sorotan industri hiburanlaporan terbaru menyoroti popularitas mahjong onlinemahjong online di tengah perubahan arah game digitalsorotan media hari ini membahas fenomena mahjong onlinetren mahjong online mengundang perhatian pengamat dunia digitalkabar terkini seputar mahjong online dan budaya internetalgoritma ai mahjong dalam sorotan teknologi game terkinimahjong online dan perkembangan analisis ai digitalkecerdasan buatan menelaah sistem mahjong berbasis algoritmatren ai mahjong memunculkan diskusi baru di media digitalmengenal peran algoritma ai pada game mahjong onlineteknologi ai dan batas prediksi hasil mahjong digitalalgoritma mahjong dianalisis melalui pendekatan kecerdasan buatanberita teknologi mengulas ai dalam permainan mahjongsistem acak mahjong dan tantangan analisis algoritma aifenomena ai mahjong online dalam perkembangan game modernmahjong online menghadirkan interpretasi baru simbol tradisionalsaat mahjong online menjadi objek bahasan portal digitaldesain antarmuka membentuk identitas mahjong onlinemahjong online dan pergeseran gaya hiburan berbasis mobilemengenal unsur grafis dalam permainan mahjong onlinekomunitas internet menyoroti fenomena mahjong onlinemahjong online dalam catatan perkembangan industri gamedari motif klasik menuju estetika mahjong onlinemahjong online dibahas dari sisi teknologi dan pengalaman penggunamengamati perjalanan mahjong online di ekosistem hiburan digitalalgoritma pg soft dan logika sistem permainan digitalmengenal rng dalam game pg soft dari sisi teknologipg soft dan peran probabilitas pada permainan berbasis digitalmembahas algoritma pg soft tanpa mengandalkan mitos polasistem acak pg soft dalam tinjauan komputasi modernanalisis data pg soft dan batas prediksi hasil permainanbagaimana algoritma game pg soft dipahami secara teknispg soft dalam diskusi statistik dan peluang permainanmengurai mitos algoritma pg soft di komunitas onlineteknologi pg soft dan transparansi sistem permainan digital