Sie können CGI-Skripte von anderen Servern nicht immer einfach übernehmen, sondern müssen sie ggf. an einigen Stellen anpassen. In vielen Fällen ist es der Interpreter, welcher einer Anpassung bedarf. Bei CGI-Skripten sollte sich dieser immer in der ersten Zeile befinden, z.B.: #!/usr/bin/perl
Eine Ausnahme bilden hier Bash-Skripte und PHP.
Bash Skripte werden in der Regel auf WebServer oder WebServer Dedicated Produkten direkt von der Kommandozeile aus gestartet, wobei hier nicht zwingend ein Interpreter im Skript angegeben werden muss. Dieser ist lediglich erforderlich, wenn das Skript durch seinen Namen direkt, aus anderen Skripten heraus oder als Cronjob aufgerufen werden soll.
PHP wird auf unseren Servern nicht als CGI-Skript ausgeführt, wodurch die Angabe des Interpreters entfallen kann. Nur, wenn Sie beispielsweise auf einem WebServer ein PHP-Skript als Cronjob ausführen möchten, ist die Angabe des Interpreters zwingend erforderlich.
Im folgenden eine kleine Übersicht der Interpreter der bei uns verfügbaren Skriptsprachen.
Skriptsprache | Interpreter | ||
---|---|---|---|
Bash | #!/bin/sh oder #!/bin/bash | ||
Perl 5.20.2 | #!/usr/bin/perl | ||
PHP (Standardversion, aktuell 8.1) | #!/usr/bin/php bzw. #!/usr/local/bin/php | ||
PHP 8.0 |
| ||
PHP 8.1 |
| ||
Python (Standardversion, aktuell 2.7.9) |
| ||
Python 3.4.2 | #!/usr/bin/python3 | ||
Ruby 2.1.5 | #!/usr/bin/ruby | ||
TCL 8.6.2 | #!/usr/bin/tclsh |
Ein anderer wichtiger Pfad ist der zu sendmail. Mit sendmail können Sie aus Skripten heraus E-Mails versenden. Aus Skripten heraus können Sie sendmail über den Pfad /usr/sbin/sendmail
ansprechen.