Python CGI-Grundlagen

Angenommene Umgebung

Erstellen eines cgi-bin-Verzeichnisses

Erstellen Sie ein cgi-bin-Verzeichnis direkt unter Ihrem Home-Verzeichnis.

user@hostname:~$ mkdir cgi-bin
user@hostname:~$ cd cgi-bin

Erstellen eines CGI-Skripts

user@hostname:~/cgi-bin$ which python3
/usr/bin/python3

user@hostname:~/cgi-bin$ vi hello.py

Überprüfen Sie den Python3-Pfad mit dem Befehl which.

hello.py


#!/usr/bin/python3

print('Content-Type: text/html; charset=utf-8')
print()

print('<h1>Hello, World!</h1>')

Codebeschreibung

  1. Sie müssen in der ersten Zeile einen Kommentar namens Shebang schreiben.
    Shebang gibt den Speicherort des Compilers an, ohne den Python-Code nicht als Python erkannt werden kann, was zu unerwartetem Verhalten führt.
  2. Die dritte Zeile print ('Content-Type: text / html; charset = utf-8') fungiert als HTTP-Header und bettet die Ausgabezeichenfolge in den Code innerhalb des HTML-Tags BODY ein. in der Lage sein.
    Die Angabe von "Zeichensatz" ist eine explizite Deklaration des Zeichencodes der Datei.
  3. Der leere Drucktext in der 4. Zeile wird verwendet, da zwei Zeilenumbrüche erforderlich sind, damit der HTTP-Header in der 3. Zeile ordnungsgemäß funktioniert.
    Wenn Sie keinen leeren Text verwenden möchten, können Sie dasselbe tun, indem Sie die Beschreibung des HTTP-Headers auf "print" (Inhaltstyp: text / html; charset = utf-8 \ n \ n) setzen. ..

Führen Sie CGI aus

Die Vorgehensweise zum Ausführen von CGI wird erläutert.

  1. Erteilen Sie dem Verzeichnis cgi-bin und der ausführbaren Datei die Ausführungsberechtigung.
  2. Starten Sie den Python-Testserver
  3. Zugriff mit einem Browser zur Überprüfung

Lokale Entwicklung ist mit den obigen drei Schritten möglich.
Wenn Sie es veröffentlichen möchten, können Sie es mit Apache2 veröffentlichen. (Weitere Informationen finden Sie unter diesen Artikel)

Befehl

user@hostname:~$ ls
cgi-bin

user@hostname:~$ sudo chmod -R +x cgi-bin

python3 -m http.server 8080 --cgi
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...

Beachten Sie, dass Sie den Server direkt über dem Verzeichnis *** cgi-bin starten müssen. *** *** Nachdem es auf localhost veröffentlicht wurde, greifen Sie auf [http: // localhost: 8080 / cgi-bin / hello.py](http: // localhost: 8080 / cgi-bin / hello.py) zu. Wenn es angezeigt wird, ist es erfolgreich.

Error

404 Not Found

403 Forbidden

500 Internal Server Error

Der Bildschirm wird leer. ・ Der Quellcode wird unverändert angezeigt

--Verbreitet

Recommended Posts

Python CGI-Grundlagen
Python-Grundlagen ⑤
Python-Grundlagen ④
Python-Grundlagen ③
Python-Grundlagen
Python-Grundlagen
Python-Grundlagen
Python-Grundlagen ③
Python-Grundlagen ②
Python-Grundlagen ②
Python-Grundlagen: Liste
Python-Grundmemorandum
# Python-Grundlagen (#matplotlib)
Python-Grundlagen: Wörterbuch
Python-Grundlagen ①
Grundlagen von Python ①
Python Slice Grundlagen
# Python-Grundlagen (Umfang)
# Python-Grundlagen (#Numpy 1/2)
# Python-Grundlagen (#Numpy 2/2)
# Python-Grundlagen (Funktionen)
Grundlagen des Python-Arrays
Grundlagen der Python-Profilerstellung
Python #Numpy Basics
Python-Grundlagen: Funktionen
# Python-Grundlagen (Klasse)
Zusammenfassung der Python-Grundlagen
Python: Unüberwachtes Lernen: Grundlagen
Grundlagen der Python-Scraping-Grundlagen
Python Basic 8 Numpy Test
Errbot: Grundlagen des Python-Chatbots
#Python DeepLearning Basics (Mathematik 1/4)
Python-Grundlagen: Socket, Dnspython
# 4 [Python] Grundlagen der Funktionen
Grundlagen von Python: Ausgabe
Python
Python: Grundlagen der Verwendung von Scikit-Learn ①
Führen Sie Pythons CGI auf CORESERVER aus
Python-Grundlagen: Bedingungen und Iterationen
Paiza Python Primer 4: Grundlagen der Liste
Python x GIS-Grundlagen (1)
Python x GIS-Grundlagen (3)
Paiza Python Primer 5: Grundlagen von Wörterbüchern
Mit Flask erstellte SNS Python-Grundlagen
Erste Schritte mit Python Grundlagen von Python
Überprüfung der Grundlagen von Python (FizzBuzz)
Grundlagen von Python x GIS (Teil 2)
Unter Windows erstellte Python-CGI-Datei
Informationen zur Grundlagenliste der Python-Grundlagen
(Python) Deep Learning Library Chainer-Grundlagen Grundlagen
Lernen Sie die Grundlagen von Python ① Grundlegende Anfänger
Kafka Python
Grundlagen der binärisierten Bildverarbeitung durch Python
Python: Grundlagen der Bilderkennung mit CNN
Python-Zusammenfassung
Eingebaute Python
Python-Einschlussnotation
CGI Server (1) Python Edition in einer Zeile
Python studieren
Python 2.7 Countdown