MWN Website
ContactHome

FastCGI (Spanel)

FastCGI adalah protokol ekstensi bagi CGI yang memungkinkan kinerja yang lebih tinggi karena efisiensi yang lebih. Sebuah proses FastCGI umumnya tidak harus direstart atau dieksekusi ulang di setiap request, melainkan berjalan di background dan memproses banyak request dalam loop. FastCGI, sama seperti CGI, tidak terikat pada bahasa atau webserver tertentu. Anda dapat membuat aplikasi FastCGI dalam bahasa apa saja yang mendukungnya, seperti Perl, Python, Ruby, dll.

Keterangan lebih jauh tentang FastCGI: http://www.fastcgi.com .

Contents

Mengaktifkan FastCGI

1. Plan hosting yang Anda pilih perlu memiliki fitur FastCGI. Hubungi staff support jika Anda tidak yakin.

2. Skrip CGI Anda, jika belum disesuaikan untuk FastCGI, perlu sedikit diubah. Misalnya, di Perl, Anda mengganti "use CGI" dan "$q = new CGI" menjadi "use CGI::Fast" dan "$q = new CGI::Fast". Di bahasa lain mungkin caranya sedikit berbeda.

3. Skrip CGI Anda dinamai dengan akhiran .fcgi dan bukan lagi .cgi.

Troubleshooting

XXX

  • lihat error log webserver
  • coba jalankan skrip Anda dari command-line
  • coba rename sementara ke .cgi
  • catatan admin: Python: jika ada baris seperti ini di error log utama server (/var/lib/apache2/error.log): ""-" /usr/bin/env: python: No such file or directory" maka gantilah baris pertama skrip aplikasi Python dari "#!/usr/bin/env python" menjadi "#!/usr/bin/python".
  • Jika aplikasi gagal berjalan minimal 30 detik selama 3 kali (mis: karena mengandung syntax error sehingga gagal dikompile oleh interpreter skrip), maka mod_fastcgi akan memundurkan interval restart dari 5 detik defaultnya menjadi 600 detik. (XXX Catatan admin: keterbatasan mod_fastcgi? Ganti mod_fastcgi dengan mod_fcgid?).

Kill beberapa kali dan gagal up kembali?

T: Saya melakukan kill terhadap proses FastCGI saya (menggunakan /c/bin/my-fcgi) beberapa kali dalam waktu singkat, mengapa kemudian timbul 500 Internal Server Error di browser?

J: Ini memang kelakuan dari mod_fastcgi, jika sebuah aplikasi FastCGI gagal up minimal 30 detik dan ini terjadi selama 3 kali berturut-turut, maka mod_fastcgi tidak akan melakukan restarting lagi dalam waktu cepat, melainkan menundanya selama 600 detik (10 menit).

Skrip contoh

Merestart aplikasi FastCGI

Untuk melihat daftar proses aplikasi FastCGI Anda yang sedang berjalan, di command line:

$ /c/bin/my-fcgi list
20361  /usr/bin/python dispatch.fcgi
21211  /usr/bin/perl test-perl.fcgi
21230  /usr/local/bin/ruby test-ruby.fcgi
24152  /usr/bin/python dis.fcgi
25217  /usr/bin/python dispatch.fcgi

Untuk membunuh semua proses-proses tersebut, gunakan:

$ /c/bin/my-fcgi kill

Untuk membunuh dengan sinyal yang berbeda, gunakan:

$ /c/bin/my-fcgi kill -KILL

Untuk membunuh hanya proses tertentu saja, sebutkan PID-nya:

$ /c/bin/my-fcgi kill -KILL 20361 21211

Atau bisa juga dengan perintah killall atau pkill untuk membunuh berdasarkan nama program:

$ /c/bin/my-fcgi pkill dis.fcgi dispatch.fcgi

Navigasi

Feedback

Artikel Popular

  • Panduan pengguna Spanel
  • Peraturan dan Persetujuan
  • Email
  • Upload files
  • Panduan pengguna Masterkey
  • Kontak MWN
  • PHP
  • Setting SMTP
  • Tentang shared hosting
  • URL sementara
  • Email Manager
  • selengkapnya...
  • Artikel Terbaru

  • Sistem afiliasi
  • Artikel:Tool lama dengan wajah baru
  • Artikel:Mengenal link di Unix
  • Menggunakan TortoiseSVN
  • Peringatan dari browser untuk situs SSL yang tidak memiliki sertifikat sendiri
  • T:Pesan kesalahan: CGI Execution Error
  • Promosi
  • Menyimpan gambar (atau file lain) di database versus di filesystem
  • T:Pesan error: sendmail: Can't send mail: Sender domain (XXX.com) does not belong to user, please use your own domain
  • Tip keamanan akun hosting Spanel
  • Pembatasan pengiriman email
  • selengkapnya...
  • Hak cipta © 2006-2008 PT Master Web Network Konten ditulis dan dikoleksi oleh staf MWN. Artikel-artikel pada situs knowledge base ini dapat dikutip dan disalin secara bebas, namun mohon menyebutkan sumber dengan URL http://kb.masterweb.net/ atau teks "Knowledge Base MWN". MWN tidak bertanggung jawab atas akurasi dan/atau kekinian konten. MWN tidak bertanggung jawab atas komentar-komentar yang dikirim pembaca. Dengan memposting komentar Anda memberi hak penuh pada MWN untuk menampilkan komentar tersebut di manapun dan kapanpun, dan untuk mengedit atau menghapus komentar tersebut dengan cara bagaimanapun dan/atau karena alasan apapun.