Zur Erinnerung werde ich die Schritte notieren, die dazu geführt haben, dass das Django-Lernprogramm unter IIS unter Windows 10 ausgeführt wurde.
Erstellen der ersten Django-App, Teil 1 Host Django mit Windows7 + IIS + virtualenv + wfastcgi Ausführen von Python (Django) unter Windows + IIS HTTP-Fehler 500.19 beim Öffnen der IIS-Webseite
Laden Sie das Installationsprogramm von der [offiziellen Website] herunter (https://www.python.org/downloads/). Bei der Installation installieren Sie bitte für alle Benutzer. Wenn es sich um eine Einzelbenutzerinstallation handelt, kann sie nicht von IIS-Benutzern verwendet und nicht betrieben werden.
Ich möchte PostgreSQL verwenden, also werde ich es installieren
Laden Sie das Installationsprogramm von der [offiziellen Website] herunter (https://www.enterprisedb.com/downloads/postgres-postgresql-downloads). Diesmal habe ich Version 13 von Windows x86-64 installiert.
Über Systemsteuerung> Programme> Windows-Funktionen aktivieren oder deaktivieren Aktivieren Sie Internetinformationsdienste.
Computerverwaltung> Dienste und Anwendungen Wenn der Internetinformationsdienst hinzugefügt wurde, wurde er aktiviert.
Wir werden ein "Web" -Verzeichnis unter C: \ Users \ username erstellen und dort arbeiten.
Eingabeaufforderung
C:\Users\Nutzername> mkdir web
Virtualenv installieren
Eingabeaufforderung
C:\Users\Nutzername\web> pip install virtualenv
Erstellen einer virtuellen Umgebung (env)
Eingabeaufforderung
C:\Users\Nutzername\web> virtualenv env
Virtuelle Umgebung aktivieren
Eingabeaufforderung
C:\Users\Nutzername\web> env\Scripts\activate
Django Installation
Eingabeaufforderung
(env) C:\Users\Nutzername\web> pip install Django
Installieren Sie wfastcgi
Eingabeaufforderung
(env) C:\Users\Nutzername\web> pip install wfastcgi
Installation von psycopg2
Eingabeaufforderung
(env) C:\Users\Nutzername\web> pip install psycopg2
Das Ergebnis der Pip-Liste ist unten.
Eingabeaufforderung
(env) C:\Users\Nutzername\web>pip list
Package Version
---------- -------
asgiref 3.2.10
Django 3.1.1
pip 20.2.3
psycopg2 2.8.6
pytz 2020.1
setuptools 49.6.0
sqlparse 0.3.1
wfastcgi 3.0.0
wheel 0.35.1
Folgen Sie dem Django-Tutorial, um ein Projekt zu erstellen.
Eingabeaufforderung
(env) C:\Users\Nutzername\web> django-admin startproject mysite
Überprüfen Sie, ob es lokal funktioniert
Eingabeaufforderung
(env) C:\Users\Nutzername\web>mysite> python manage.py runserver
Greifen Sie auf http://127.0.0.1:8000/ zu. Wenn die folgende Seite angezeigt wird, ist dies in Ordnung.
Fügen Sie eine neue Site hinzu. Über Computerverwaltung> Internetinformationsdienste Legen Sie den physischen Pfad usw. unter Site> Website hinzufügen fest.
Der physische Pfad legt den Ordner des Django-Projekts fest (übergeordneter Ordner wie manage.py).
Festlegen über Handlerzuordnungen> Skriptzuordnung hinzufügen. Die ausführbare Datei gibt python.exe in der env-Umgebung an.
Entsperren Sie, um wfastcgi zu verwenden
(env) C:\Users\Nutzername\web\mysite>%windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers
Konfigurationspfad"MACHINE/WEBROOT/APPHOST"Sektion"system.webServer/handlers"Entsperrt.
Führen Sie wfastcgi enable aus
(env) C:\Users\Nutzername\web\mysite>wfastcgi-enable
Konfigurationsänderungen konfigurieren Commit-Pfad"MACHINE/WEBROOT/APPHOST"von"MACHINE/WEBROOT/APPHOST"Sektion"system.webServer/fastCgi"Angewendet
"c:\users\Nutzername\web\env\scripts\python.exe|c:\users\Nutzername\web\env\lib\site-packages\wfastcgi.py" can now be used as a FastCGI script processor
Erstellen Sie web.config unter dem Django-Projekt (dasselbe Verzeichnis wie manage.py). Setzen Sie den Wert von scriptProcessor auf den Wert, der von wfastcgi-enable angezeigt wird.
web.config
<configuration>
<appSettings>
<add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()" />
<add key="PYTHONPATH" value="C:\Users\Nutzername\web" />
<add key="DJANGO_SETTINGS_MODULE" value="mysite.settings" />
</appSettings>
<system.webServer>
<handlers>
<add name="Python FastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="c:\users\Nutzername\web\env\scripts\python.exe|c:\users\Nutzername\web\env\lib\site-packages\wfastcgi.py" resourceType="Unspecified" />
</handlers>
</system.webServer>
</configuration>
Computerverwaltung> Internetinformationsdienste Bearbeiten Sie die Berechtigungen von Meine Site (neu erstellte Site). Fügen Sie auf der Registerkarte Sicherheit den Benutzer [Computername \ IIS_IUSRS] hinzu
Klicken Sie im Datei-Explorer in den Eigenschaften mit der rechten Maustaste auf den Ordner env unter C: \ Benutzer \ Benutzername \ Web> Fügen Sie außerdem einen Benutzer mit [Computername \ IIS_IUSRS] hinzu.
Wenn Sie unter Computerverwaltung> Internetinformationsdienste die Option Meine Website auswählen und die Rakete beim Surfen auf der Website fliegt, wird die Django-Website ausgeführt.
Wenn Sie einen 0x800700005-Fehler oder einen 0x8007010b-Fehler erhalten, wie unten gezeigt, Überprüfen Sie, ob der in der Dateizugriffsberechtigung und der Handlerzuordnung festgelegte Python.exe-Pfad geeignet ist.
Ursache: Tritt auf, wenn das Site-Verzeichnis keinen Zugriff auf den Computernamen \ IIS_IUSRS hat Lösung: Fügen Sie Berechtigungen für den Computernamen \ IIS_IUSRS hinzu
Ursache: Tritt auf, wenn Sie keinen Zugriff auf den Computernamen \ IIS_IUSRS im von Ihnen verwendeten Verzeichnis Python.exe haben. Lösung: Fügen Sie Berechtigungen für den Computernamen \ IIS_IUSRS hinzu
Das nächste Mal werde ich die Prozedur schreiben, um die Datenbank in PostgreSQL zu ändern: Welle:
Recommended Posts