configure fast cgi di nginx tidak terlalu sulit bahkan lebih mudah dari pada fast cgi di apache, oke lets do it.
Sebagai demo Kita akan memakai contoh CGI application dari lazarus yaitu
buka echo.lpr dan rubah menjadi sebagai berikut :
program echo;cool bukan?
{$mode objfpc}{$H+}
uses
fpWeb,fpfCGI, wmecho; // <== ubah fpcgi menjadi fpfcgi.
begin
Application.Initialize;
Application.Port:=9090; //<== tambahkan Port , Fast CGI app kita akan listening di port ini.
Application.CreateForm(TEchoModule, EchoModule);
Application.Run;
end.
sekarang kita buka file configuration dari nginx
di root http kita tambahkan directive "upstream fastcgi"
upstream fastcgi {lalu di dalam directive "server" :
ip_hash;
server 127.0.0.1:9090; //<== address dan port dari fast cgi application
// kita bisa tambahkan server lain untuk load balancing eg : server
}
location /pas { // <== berarti http://example.com/passimpan.
fastcgi_pass fastcgi; //<== lihat upstream
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
fast cgi app kita harus dijalankan terlebih dahulu sebelum ada request ke nginx.
simple double klik fast cgi app td.
lalu reload nginx (nginx -s reload) .pada browser ketik "http://localhost/pas".
viola!!
Referensi :
- Nginx HTTP Server Clément Nedelcu packt Publishing 2010 ISBN 978-1-849510-86-8
sadis... tapi sekarang udah ada HTTP server application di Lazarus, jadi gak perlu external web server lagi. Semuanya embedded dalem 1 executable!
BalasHapus