Gambar hero untuk Pengertian mod_fastcgi

Pengertian mod_fastcgi

18/09/2024

mod_fastcgi adalah modul Apache HTTP Server yang mengaktifkan FastCGI, sebuah ekstensi berkinerja tinggi dan independen bahasa untuk CGI (Common Gateway Interface). Modul ini meningkatkan kecepatan situs web dengan menjaga proses aplikasi tetap berjalan di antara permintaan, menghilangkan beban tambahan dari pembuatan proses baru untuk setiap permintaan.

Cara kerja

FastCGI bekerja dengan memisahkan proses aplikasi dari proses server web, memungkinkan aplikasi untuk tetap berjalan di latar belakang dan siap untuk memproses permintaan berikutnya. Ini berbeda dengan CGI (Common Gateway Interface) tradisional, di mana setiap permintaan baru memerlukan inisialisasi ulang aplikasi, yang dapat mengakibatkan waktu eksekusi yang lebih lama dan penggunaan sumber daya yang lebih tinggi.

be513dac1ef9851a

Cara kerja FastCGI. Image credit: O’Reilly Media/Nginx HTTP Server - Fourth Edition

FastCGI menggunakan model proses yang lebih persisten, yang memungkinkan aplikasi untuk terus berjalan dan memproses banyak permintaan tanpa harus memulai ulang setiap kali ada permintaan baru.

Catatan: Jangan ikut ketik tanda backtick   di awal dan akhir kode/perintah, itu hanya penanda blok kode untuk memudahkan penulisan.

graph TD A[Klien / Browser] -- Permintaan HTTP --> B(Apache Web Server) B -- mod_fastcgi --> C{Aplikasi FastCGI} C -- Memproses & Hasilkan Respons --> C C -- Kirim Respons Kembali --> B B -- Respons HTTP --> A

Implementasi FastCGI

Untuk menggunakan mod_fastcgi, kita harus terlebih dahulu menginstal modul tersebut di Apache. Namun, perlu diperhatikan bahwa mod_fastcgi tidak lagi dipelihara secara aktif. Bagi pengguna Apache 2.4 atau yang lebih baru, sangat disarankan untuk menggunakan mod_proxy_fcgi, yang telah disertakan dalam distribusi standar Apache sejak versi 2.4.

Iklan
Baca juga: Nvidia Dan Mediatek Bermitra Dalam Teknologi Otomotif

Jika masih memerlukan mod_fastcgi, kita dapat menginstalnya menggunakan langkah-langkah berikut:

  • Unduh mod_fastcgi: Dapatkan kode sumber dari repositori pihak ketiga seperti FastCGI Archive atau arsip modul Apache resmi
  • Bangun dan Instal: Kompilasi modul dari sumber menggunakan alat apxs. Jalankan perintah apxs -i -a -c mod_fastcgi.c
  • Konfigurasi Apache: Setelah terinstal, tambahkan konfigurasi yang diperlukan ke file httpd.conf Anda atau di dalam konfigurasi Virtual Host spesifik Anda

Berikut adalah contoh konfigurasi sederhana:

bash
# Load the FastCGI module
LoadModule fastcgi_module modules/mod_fastcgi.so

<IfModule mod_fastcgi.c>
    # Define the external FastCGI server
    # Note: /usr/lib/cgi-bin/php-fcgi is a virtual path used as an identifier
    FastCGIExternalServer /usr/lib/cgi-bin/php-fcgi -socket /var/run/php-fcgi.sock

    # Define handlers and aliases
    AddHandler  fastcgi-script .fcgi
    ScriptAlias /fcgi-bin/     "/usr/lib/cgi-bin/"

    # Directory specific configuration
    <Directory "/usr/lib/cgi-bin">
        Options +ExecCGI
        SetHandler fastcgi-script
        
        # Access control for Apache 2.4+
        Require all granted
    </Directory>
</IfModule>

Salah satu penggunaan paling umum dari FastCGI adalah untuk menjalankan PHP. Menggunakan mod_fastcgi dengan PHP dapat memberikan kinerja yang lebih baik dibandingkan dengan mod_php biasa.

Berikut adalah contoh konfigurasi untuk menjalankan PHP dengan FastCGI:

Iklan
php
# 1. Define the external server using a virtual path
# (The first path doesn't need to exist on disk; it's just a label)
FastCGIExternalServer /usr/lib/cgi-bin/php-fcgi -socket /var/run/php-fcgi.sock -idle-timeout 120

# 2. Map the .php extension to a custom handler name
AddHandler php-fastcgi .php

# 3. Define the Action to point to the virtual path defined above
Action php-fastcgi /php-fcgi-bin

# 4. Create an Alias to link the Action path to the FastCGI identifier
Alias /php-fcgi-bin /usr/lib/cgi-bin/php-fcgi

# 5. Grant permissions to the virtual path
<Location "/php-fcgi-bin">
    Require all granted
</Location>

Seperti disebutkan sebelumnya, mod_fastcgi tidak lagi dipelihara secara aktif, dan banyak pengguna Apache telah beralih ke alternatif yang lebih modern dan dipelihara, seperti:

Baca juga: Tutorial instalasi printer Epson L3110 di Kubuntu 24.04
  • mod_proxy_fcgi, yaitu modul yang didistribusikan secara resmi dengan Apache sejak versi 2.4. Ini memungkinkan Apache untuk bertindak sebagai proxy yang mengarahkan permintaan ke aplikasi FastCGI yang berjalan di server lain.
  • PHP-FPM (FastCGI Process Manager), adalah pengelola proses FastCGI yang lebih disukai. PHP-FPM menawarkan lebih banyak fitur dan opsi konfigurasi yang lebih fleksibel dibandingkan dengan modul FastCGI tradisional.

Kesimpulan

mod_fastcgi adalah solusi yang kuat dan efisien untuk menjalankan aplikasi FastCGI di Apache, menawarkan peningkatan kinerja, skalabilitas, dan keamanan. Namun, karena modul ini tidak lagi dipelihara, pengguna disarankan untuk beralih ke alternatif yang lebih modern seperti mod_proxy_fcgi atau PHP-FPM, terutama bagi mereka yang menggunakan Apache versi terbaru. Meskipun begitu, memahami cara kerja mod_fastcgi dan manfaatnya dapat memberikan wawasan yang berharga dalam mengelola dan mengoptimalkan server web Apache.

Topik dalam Artikel Ini

GNU Linux Unix WWW Web Server Apache PHP FastCGI

Memuat kontributor…

Dan para kontributor lainnya yang mendukung MauCariApa.com.

Dukung Kami
seedbacklink logo

seedbacklink

Marketplace backlink terbesar dan terpercaya di Indonesia

Diskusi & Komentar

Panduan Komentar
  • • Gunakan bahasa yang sopan dan konstruktif
  • • Hindari spam, promosi, atau link yang tidak relevan
  • • Komentar akan terus dipantau secara berkala

Tentang Penulis

MauCariApa.com

MauCariApa.com

MauCariApa.com hadir sebagai wadah bagi para pencinta teknologi untuk saling belajar dan berkembang

Lanjut Membaca