Zeigen Sie Python 3 im Browser mit MAMP an
Als Memorandum werde ich es so detailliert wie möglich schreiben.
--Umgebung --Verfahren --Beispielcode
OS :MacOS Umgebung: MAMP Sprache: Python 3.6.1 Browser: Chrom Texteditor: Atom
--Apache Einstellungen
Suchen Sie httpd.conf mit dem Anwendungsfinder
Ort
/Applications/MAMP/conf/apache/httpd.conf
Es war in.
Unter httpd.conf
#AddHandler cgi-script .cgi
Zu
AddHandler cgi-script .cgi .py
Starten Sie MAMP neu, um httpd.conf neu zu laden
Ausführungsberechtigung für das Programm erteilen
Zum Beispiel, wenn Sie test.py erstellen
Am Terminal
$ chmod 755 test.py
Lassen Sie uns tippen.
Wenn Sie keine solche Datei oder kein solches Verzeichnis sehen,
Die aktuelle Position im Terminal ist falsch. Verschieben Sie sie daher mit dem Befehl cd.
--Erstelle test.py
Die erste Zeile ist die Position des Python-Interpreters.
Wenn Sie es nicht wissen, am Terminal
vorausgesetzt,
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
Und so weiter.
Die Zeilen 2-5 müssen auf Japanisch angezeigt werden.
Ab der 6. Zeile können Sie auf diese Weise HTML in Python3 schreiben. Es muss nicht sein.
In diesem Fall reicht nur die 12. Zeile aus.
** Beispielcode **
test.py
#!/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
print("Content-Type: text/html; charset=utf-8")
print("")
print("""
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h1>It works!</h1>
<p>chmod 755 /Applications/MAMP/htdocs/chatbot.py</p>
<p>finder :apache_error.log</p>
<p>Text</p>
</body>
</html>
""")
print('Ist Prost auf gute Arbeit.')
** Ausführungsergebnis **
Wenn Sie eine Fehlermeldung in Ihrem Browser erhalten
Suche apache_error.log mit Finder und
Überprüfen Sie apache_error.log in der Konsole.
Hier sind einige häufig zu beachtende.
malformed header from script Wenn der HTTP-Header unvollständig ist
Die Zeilen 3-12 sind möglicherweise falsch.
Exec format error Ausführungsformatfehler sind häufig
Die erste Zeile gibt nicht an, wo sich die richtige ausführbare Python-Datei befindet.
Versuchen Sie im Terminal zu überprüfen, ob der in der ersten Zeile angegebene Speicherort korrekt ist
Lassen Sie uns die Version überprüfen.
$ /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 --version
Und so weiter
Python 3.6.1
Es ist in Ordnung, wenn Sie so etwas sagen.
Permission denied Ein Berechtigungsfehler bedeutet, dass Sie keine Ausführungsberechtigung für die Datei haben, die Sie ausführen möchten.
Am Terminal
Bitte schlagen Sie es.
UnicodeEncodeError: 'ascii' codec can't encode characters
Es kommt heraus, wenn ich Japanisch usw. schreibe.
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
Ist geschrieben?
Informationen zu Syntaxfehlern finden Sie auf der offiziellen Python-Website.
Fragen, Wünsche usw.
Fühlen Sie sich frei zu DM auf Twitter!
Klicken Sie auf den Vogel unten, um zum Unterkonto zu springen.
_,,, _ / :: o ・ ァ ♪ ∈ Mi ;;; Nein, Nein
Recommended Posts