[PYTHON] Hallo Welt nicht localhost in Django

Einführung

Zum Zeitpunkt der Arbeit ist es auf der Google Cloud Platform installiert. In Hello World of Django wird es meiner Meinung nach häufig auf localhost ausgeführt, aber es wurde geschrieben, um den Bereitstellungsfluss zu beschreiben. Als Voraussetzung wird angenommen, dass Hallo Welt mit mod_wsgi zeichnen ausgeführt wird. (Weil mod_wsgi erforderlich ist)

Umgebung OS: Debian 9.0 stretch Python: 3.6.3

Django Installation

Ich werde es sofort installieren. Es wird davon ausgegangen, dass Python bereits installiert ist. Aktualisieren Sie zuerst pip und installieren Sie Django.

pip install --upgrade pip
pip install django

... ist es wirklich installiert? Geben Sie Folgendes in der angegebenen Reihenfolge ein.

python
>>> import django
>>> django.get_version()
'2.1.5'

Wenn Sie die Version wie folgt bestätigen können, ist die Installation erfolgreich. Geben Sie dann `quit ()` ein, um den Python-Modus zu verlassen.

Erstellen eines Django-Projekts

Gehen Sie in Ihr Home-Verzeichnis und erstellen Sie ein Django-Projekt. (Es muss nicht Ihr Home-Verzeichnis sein)

cd ~
django-admin startproject myproject

Das Django-Projekt wird jetzt direkt im HOME-Verzeichnis erstellt.

Ändern Sie die Apache2-Konfigurationsdatei

Ändern Sie die Apache2-Konfigurationsdatei (sites-available / 000-default.conf) so, dass wsgi.py in Django auf den Zugriff auf das Dokumentstammverzeichnis reagiert.

cd /etc/apache2/sites-available
sudo vim 000-default.conf

documentrootAuskommentieren(So →# documentroot /var/www/html)Bitte. Wenn Sie WSGIScriptAlias``` in [Hallo Welt mit mod_wsgi zeichnen](http://qiita.com/shigechioyo/items/2b25f60918be6b81581a) festgelegt haben, löschen Sie es ebenfalls. Fügen Sie dann Folgendes hinzu: Vergessen Sie nicht, den USERNAME-Teil zu ändern Übrigens können Sie es in vim durch `:% s / USERNAME / YOURNAME / g``` ersetzen.

WSGIScriptAlias / /home/USERNAME/myproject/myproject/wsgi.py
WSGIPythonPath /home/USERNAME/myproject

<Directory /home/USERNAME/myproject/myproject>
    <Files wsgi.py>
    Order deny,allow
    AllowOverride None
    require all granted
    </Files>
</Directory>

Ändern Sie settings.py in der Django-Einstellungsdatei

Ändern Sie, wie der Dateiname andeutet, die Einstellungen für Django. Hier bearbeiten wir die Datei mit vim.

cd ~/myproject/myproject
vim settings.py

Zuerst müssen wir die Hosts festlegen, auf die zugegriffen werden kann. Ändern Sie also ALLOWED_HOSTS = [].

ALLOWED_HOSTS = ["*"]

Ändern Sie dann die Sprach- und Zeiteinstellungen.

LANGUAGE_CODE = 'ja'

TIME_ZONE = 'Asia/Tokyo'

Erstellen Sie eine Django-Anwendung

Bisher haben Sie ein Django-Projekt erstellt. Erstellen Sie als Nächstes eine Django-Anwendung. Verwenden Sie wie gewohnt `` `manage.py```.

cd ~/myproject
python manage.py startapp myapp

Dann sollte die folgende hierarchische Struktur vervollständigt werden.

myproject
  |
  ├── myapp
  │     ├── __init__.py
  │     ├── admin.py
  │     ├── apps.py
  │     ├── migrations
  │     │   └── __init__.py
  │     ├── models.py
  │     ├── tests.py
  │     └── views.py
  ├── db.sqlite3
  ├── manage.py
  └── myproject
      ├── __init__.py
      ├── settings.py
      ├── urls.py
      └── wsgi.py

Als nächstes bearbeiten Sie `settings.py```, um die` `myapp Anwendung zu erkennen.

cd ~/myproject/myproject
vim settings.py
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp'
]

Durch Hinzufügen von `` `myapp``` auf diese Weise wird die erstellte Anwendung erkannt.

Views.py bearbeiten

Erstellen Sie den Zeichnungsteil des Bildschirms. Bearbeiten von views.py im Ordner myapp.

cd ~/myproject/myapp
vim views.py
from django.shortcuts import render
from django.http import HttpResponse

def home(request):
    return HttpResponse("Hello, Django World")

Bearbeiten Sie urls.py

Erstellen Sie die Logik, für die die Ansicht für die clientseitige Anforderungs-URL zurückgegeben werden soll.

cd ~/myproject/myproject
vim urls.py
from django.contrib import admin
from django.urls import path
from myapp.views import home

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', home),
]

Starten Sie schließlich apache2 neu.

sudo service apache2 restart

Dies sollte * Hallo Django World * zeichnen. Als nächstes plane ich, die Datenbank auf PostgreSQL zu ändern.

Recommended Posts

Hallo Welt nicht localhost in Django
Hallo Welt mit Django
Hallo Welt (Anfänger) mit Django
Lass uns "Hello World" in 40 Sprachen machen! !!
Implementierung der Login-Funktion in Django
cout << "Hallo Welt! \ N" in Python
Hallo Welt mit Flasche [Passendes Memo]
Code: 2 "Hello World" im "Choregraphe-Python-Skript"
Erste Schritte mit Heroku-Viewing Hello World in Python Django mit Raspberry PI 3
Hallo Welt
R: Verwenden Sie im Skript Japanisch anstelle von Japanisch
(Für mich) Django_1 (Basic / Hello World / Template)
So zeigen Sie Hello World in Python an
Hallo Welt mit gRPC / go in Docker-Umgebung
Hallo Welt mit allen Funktionen der Go-Sprache
Modell in Django
Pymacs helloworld
Die Geschichte der Anzeige von Mediendateien in Django
Erstellen Sie mit Django eine Hallo-Welt-Anwendung mit nur einer Datei
Für mich als Django-Anfänger (3) - Hallo Welt! --- ---.
Form in Django
Cython Helloworld
Die Geschichte des Aufbaus der schnellsten Linux-Umgebung der Welt
Studie vom Anfang von Python Hour1: Hallo Welt
Erläuterung zum NoReverseMatch-Fehler in "Python Django Super Introduction"
web2py Hinweis: Hallo Welt
Hallo Welt mit ctypes
Eindrücke, Django zu berühren
RabbitMQ Tutorial 1 ("Hallo Welt!")
Hallo, Welt mit Docker
Djangos erste Hallo Welt
Hallo Welt auf Flasche
Ich habe an der Übersetzungsaktivität des offiziellen Django-Dokuments teilgenommen
Zusammenfassung der Stolperpunkte in Django zum ersten Mal
Hallo Welt in verschiedenen Sprachen [Python / PHP / Java / Perl / Ruby]
Django Geändert, um viele Daten gleichzeitig zu speichern