GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Einfache CGI- und Apache-Beispiele unter Ubuntu Linux

Einführung

CGI (Common Gateway Interface) ist eine Schnittstelle zwischen dem Webclient und dem Webserver, der Ihr CGI-Skript/Programm ausführt. CGI ist ziemlich alt und wurde weitgehend von verschiedenen Programmiersprachen wie PHP usw. abgelöst. Es kann jedoch immer noch seinen Platz in den Händen von Linux-Systemadministratoren als schnelles Tool zur Systemüberwachung und -verwaltung über einen Webbrowser finden. Dieser Artikel beschreibt Schritt für Schritt, wie grundlegende CGI-Skripte mit verschiedenen Programmiersprachen und Skripten unter Verwendung des Apache-Webservers unter Ubuntu Linux ausgeführt werden.

Apache installieren

Zuerst müssen wir den Apache-Webserver installieren. Dies ist eine ziemlich einfache Aufgabe und kann mit apt-get erreicht werden Befehl:

$ sudo apt-get install apache2

Der obige Befehl installiert den Apache 2-Webserver mit einer Standard-Site unter:/etc/apache2/sites-available/default. Wenn Sie diese Standardkonfigurationsseite öffnen, sehen Sie, dass sie so konfiguriert ist, dass sie CGI-Skripte von /usr/lib/cgi-bin ausführt Verzeichnis mit dem URL-Alias ​​/cgi-bin/ :

 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">

Optional können Sie Ihre DNS-Einstellungen so ändern, dass sie auf die IP-Adresse Ihres neuen Webservers verweisen, oder einfach Ihre lokale /etc/hosts-Datei bearbeiten. Zum Beispiel:

10.1.1.61       cgi-example.local

Wobei 10.1.1.61 eine IP Ihres Webservers ist, auf dem Apache läuft, und cgi-example.local ein willkürlicher Domänenname ist.

CGI-Skript erstellen

CGI funktioniert mit mehreren Sprachen, aber jetzt beginnen wir mit der Bash-Shell. Wir werden später Beispiele für einige andere Sprachen zeigen. Hier ist eine einfache Version des CGI-Bash-Beispiels:

#!/bin/bash
echo "Content-type: text/html"
echo ''
echo 'CGI Bash Example'

Kopieren Sie den obigen Code und fügen Sie ihn in eine neue Datei in /usr/lib/cgi-bin/ namens example-bash.sh ein. Wenn Sie fertig sind, machen Sie die Datei mit chmod ausführbar Befehl:

$ sudo chmod 755 /usr/lib/cgi-bin/example-bash.sh

CGI-Skript anzeigen

Alles, was bleibt, ist, mit Ihrem Browser zum Hostnamen oder zur IP-Adresse Ihres Webservers zu navigieren. In unserem Fall lautet die URL:http://cgi-example.local/cgi-bin/example-bash.sh

Sie können dieses Beispiel bearbeiten, um eine Festplattennutzung der Root-Partition „/“ des Servers anzuzeigen. Sie sind nur durch Ihre Vorstellungskraft begrenzt:

#!/bin/bash
echo "Content-type: text/html"
echo ''
echo 'CGI Bash example<br>'
echo `df -h / | grep -v Filesystem`

Der obige Code sucht nach freiem Speicherplatz für eine Root-Partition und erzeugt die folgende Seite:

Weitere CGI-Beispiele

Wie versprochen, hier sind weitere CGI-Beispiele für ein paar weitere Programmiersprachen, um Ihnen den Einstieg zu erleichtern.

Perl

Erstellen Sie die folgende /usr/lib/cgi-bin/example-perl.pl mit folgendem Inhalt und machen Sie sie ausführbar:

#!/usr/bin/perl

print "Content-type: text/html\n\n";
print <<htmlcode;
<html>
<head>
<title>CGI Perl Example</title>
</head>
<body>
<h1>CGI Perl Example</h1>
<p>CGI Perl Example</p>
</body>
htmlcode

Python

Erstellen Sie die folgende /usr/lib/cgi-bin/example-python.py mit folgendem Inhalt und machen Sie sie ausführbar:

<html>
<head>
<title>CGI Python Example</title>
</head>
<body>
<h1>CGI Python Example</h1>
<p>CGI Python Example</p>
</body></html>
"""

C

Damit C und C++ funktionieren, muss ein Compiler installiert sein. Installieren Sie zuerst den Compiler mit:

$ sudo apt-get install build-essential

Erstellen Sie nach der Installation eine Datei example-c.c mit dem folgenden Code:

#include <stdio.h>
int main(void)
{
printf("Content-Type: text/plain \n\n");
printf("CGI C Example \n");
}

Speichern Sie den Inhalt der Datei example-c.c und kompilieren Sie sie mit dem folgenden Linux-Befehl:

$ sudo gcc -o /usr/lib/cgi-bin/example-c example-c.c

Jetzt sollten Sie auf Ihr C-kompiliertes CGI-Skript zugreifen können mit:http://cgi-example.local/cgi-bin/example-c

C++

Damit C und C++ funktionieren, muss ein Compiler installiert sein. Installieren Sie zuerst den Compiler mit:

$ sudo apt-get install build-essential

Erstellen Sie nach der Installation eine Datei example-cpp.c mit folgendem Code:

#include <iostream>
using namespace std;

int main()
{
cout << "content-type: text/html" << endl << endl;
cout << "<h1>CGI C++ example</h1>" << endl;
return 0;
}

Speichern Sie den Inhalt der Datei example-cpp.c und kompilieren Sie sie mit dem folgenden Linux-Befehl:

$ sudo g++ -o /usr/lib/cgi-bin/example-cpp example-cpp.c

Jetzt sollten Sie auf Ihr C-kompiliertes CGI-Skript zugreifen können mit:http://cgi-example.local/cgi-bin/example-cpp

Schlussfolgerung

Wie bereits erwähnt, ist CGI ziemlich alt und wurde weitgehend durch verschiedene Programmiersprachen wie PHP usw. ersetzt. Wie Sie jedoch sehen können, ist es immer noch ein relativ einfaches Tool, mit dem Sie Ihre Linux-Verwaltungsaufgaben wie eine benutzerdefinierte Fernüberwachung automatisieren können Ihre Linux-Server mit einem Webbrowser.


Ubuntu
  1. Grundlegende PHP 7- und Nginx-Konfiguration unter Ubuntu 16.04 Linux

  2. So aktivieren und deaktivieren Sie das PHP-Curl-Modul mit Apache unter Ubuntu Linux

  3. So installieren Sie Apache Cassandra unter Ubuntu und anderen Linux

  4. Installieren und konfigurieren Sie Apache Spark unter Ubuntu 20.04

  5. Installieren und konfigurieren Sie Apache und PHP mit cgi auf Ubuntu oder Debian

Sternchen beim Eingeben des Sudo-Passworts in Linux anzeigen (Beispiel für Ubuntu und CentOS)

Installieren Sie Apache OpenOffice in Ubuntu und Linux Mint

So installieren Sie Apache Nifi unter Ubuntu Linux

50 einfacher und nützlicher Linux-Cut-Befehl in Unix mit Beispielen

50 einfache und nützliche Beispiele für den Find-Befehl in Linux

So installieren Sie LAMP unter Ubuntu 15.10 (Linux, Apache, MySQL und PHP)