Ich hatte große Probleme, Python dazu zu bringen, an Apache zu arbeiten, daher wird dieser Beitrag auch als Memorandum dienen. Ich bin noch ein Anfänger. Wenn Sie also Punkte oder Ratschläge haben, können Sie gerne darauf hinweisen.
--Verfahren zum Ausführen von Python unter Apache
Das Apache-Installationsprogramm kann von der folgenden Site heruntergeladen werden.
Apache Lounge : https://www.apachelounge.com/download/
Wenn Sie die Datei im Zip-Format entpacken, finden Sie darin eine Datei mit dem Namen "Apache24". Legen Sie sie also in einem beliebigen Verzeichnis ab (diesmal direkt unter dem Laufwerk C).
Installieren Sie Apache an der Eingabeaufforderung. ** Das stimmt, ich mache es auf diesem schwarzen Bildschirm. ** Sie müssen es als Administrator öffnen. Geben Sie daher beim Start den folgenden Befehl ein.
powershell start-process cmd -verb runas
Bei der Ausführung kann es als Administrator geöffnet werden.
Wenn Sie "Es ist mühsam, einen Befehl einzugeben!" Sagen, suchen Sie wie in der Abbildung unten gezeigt und klicken Sie auf "Als Administrator ausführen", um das gleiche Ergebnis zu erhalten.
Stellen Sie nach der Ausführung das aktuelle Verzeichnis auf "C: \ Apache24 \ bin" ein (siehe Abbildung unten).
Geben Sie hier "httpd -k install" ein, um die Apache-Installation abzuschließen. Geben Sie von nun an Befehle auf diesem Bildschirm ein, um zu starten, zu stoppen und neu zu starten.
Start: httpd -k start
Stop: httpd -k stop
Neustart: httpd -k restart
Geben Sie http: // localhost
in den Browser ein und wenn ** Es funktioniert! ** angezeigt wird, ist es OK.
Wenn Sie die .py-Datei in Apaches htdocs platzieren und ausführen, wird Python standardmäßig nicht verarbeitet. Das Skript wird als einfacher Text zurückgegeben, da es nicht verarbeitet wird. Daher muss die Einstellungsdatei neu geschrieben und das Python-Skript selbst geändert werden.
Es gibt eine Datei mit dem Namen "httpd.conf" in "C: \ Apache24 \ conf". Öffnen Sie sie also und schreiben Sie sie wie folgt neu.
httpd.conf
#LoadModule cgi_module modules/mod_cgi.so
↓
LoadModule cgi_module modules/mod_cgi.so
Options Indexes FollowSymLinks
↓
Options Indexes FollowSymLinks ExecCGI
#AddHandler cgi-script .cgi
↓
AddHandler cgi-script .cgi .py
Starten Sie Apache neu, wenn Sie fertig sind.
Lassen Sie uns zunächst ein einfaches Skript schreiben und ausführen, um zu überprüfen, ob es leicht angezeigt werden kann.
hello.py
#!C:/Users/"Nutzername"/AppData/Local/Programs/Python/Python37/python.exe
# -*- coding: utf-8 -*-
print("Content-Type: text/html;\n")
print("<h1>hello</h1>")
Die erste Zeile "#! C: / Users /" Benutzername "/ AppData / Local / Programs / Python / Python37 / python.exe" gibt Python an, das unter Apache ausgeführt werden soll. Folgen Sie dem Pfad zu Python, der auf Ihrem PC installiert ist. Stellen Sie sicher, dass Sie es schreiben, da Sie Python ohne es nicht verarbeiten können. Dieses Mal habe ich ein "
Wenn Sie so etwas sehen, sind Sie erfolgreich.
Verwenden Sie das Modul "influxdb", um InfluxDB-Daten in Python abzurufen. Es ist nicht standardmäßig installiert, daher müssen Sie es mit pip
vom Terminal aus installieren.
pip install influxdb
Wenn Sie ein On-Campus- oder Unternehmensnetzwerk verwenden, müssen Sie möglicherweise einen Proxyserver angeben. In diesem Fall,
pip install influxdb --proxy="Proxy Server:Hafen"
Es ist okay, wenn du es tust.
Lassen Sie uns nun den Wert von InfluxDB abrufen und im Browser anzeigen. Ich habe das hello.py
umgeschrieben, das ich früher verwendet habe.
hello.py
#!C:/Users/Nutzername/AppData/Local/Programs/Python/Python37/python.exe
# -*- coding: utf-8 -*-
from influxdb import InfluxDBClient
print("Content-Type: text/html;\n")
client = InfluxDBClient(
host='Hostname',
port=8086,
username='root',
password='root',
database='Name der Datenbank'
)
dbq = client.query("select * from test_measurement")
for i in dbq:
for n in i:
print(n)
print("<br>")
Als ich das tat, zeigte der Browser ungefähr Folgendes an:
Der Zeilenumbruch <br>
ist ebenfalls ordnungsgemäß aktiviert.
Ich beabsichtige, das ausgeführte Verfahren so zu schreiben, dass keine Fehler auftreten. Wenn Sie jedoch Vorschläge oder Ratschläge haben, zögern Sie bitte nicht, dies mir mitzuteilen. Dies ist das erste Mal, dass ich auf Qiita poste, aber es ist ziemlich schwierig, einen Satz wie diesen zu schreiben ...
Recommended Posts