Interface

Aby program mógł być użyty jako źródło danych przez serwer WWW, musi być spełnionych kilka warunków.
  • Skrypt musi generować nagłówek zawierający co najmniej linię:
     Contenet-type: text/html 
    Zamiast text/html może wystąpić inny typ MIME adekwatny do typu danych które zamierzamy generować.
    Zamiast tego możemy użyć nagłówka służącego do przekierowania na inną stronę:
     Location: url-do-innej-strony.html
  • Do nagłówka może być dołączonych jeszcze kilka linii informacyjnych.
  • Nagłówek od danych (treści strony) musi być oddzielony pustą linią.
  • W części danych skrypt (program) powinien wygenerować kod odpowiadający zapowiedzianemu w nagłówku typowi pliku.
  • Całość danych (nagłówek i dane) wypisywana jest na standardowe wyjście. Należy zadbać, żeby skrypt nie wypisywał tam niepożądanych komunikatów diagnostycznych.
  • Skrypty muszą zaczynać się linią definiująca program, którym należy go wykonywać.
    Np. dla basha będzie to:
     #!/bin/bash
  • Zarówno skrypty jak i programy muszą być wykonywalne dla grupy others, dodatkowo skrypty muszą być dostępne do odczytu dla tej grupy.
Treść najprostszego programu można zobaczyć na stronie z przykładami (źródło skryptu pierwszy.cgi).
Jan Słupski, jslupski@email.com