14.16. Pisanie skryptów CGI

Podziękowania dla Chetana Patila

Problem

Chcemy uruchomić kod Ruby za pośrednictwem serwera WWW, bez konieczności jego specjalnej konfiguracji.

Rozwiązanie

Większość serwerów WWW obsługuje skrypty CGI, które bez trudu można pisać w języku Ruby. Poniżej zamieszczono prosty skrypt CGI, który wywołuje uniksowe polecenie ps, przetwarza jego wyniki i wyświetla listę działających procesów w postaci dokumentu HTML[97]. Każdy, kto ma dostęp do serwera WWW, może następnie przeglądać listę procesów działających w systemie.

#!/usr/bin/ruby # ps.cgi processes = %x{ps aux}.collect do |proc| '<tr><td>' + proc.split(/\s+/, 11).join('</td><td>') + '</td></tr>' end puts 'Content-Type: text/html' # W tym miejscu można zwrócić ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.