Save 15% on All Hosting Services

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul: Skills Începeți
Secțiuni
Administrație Linux

Cum să instalezi Django pe un server de hosting: Un ghid complet pas cu pas

Django este un framework web Python de nivel înalt conceput pentru a încuraja dezvoltarea rapidă și designul curat și pragmatic. Rămâne una dintre cele mai populare alegeri pentru construirea aplicațiilor web scalabile, sigure și ușor de întreținut — de la bloguri simple la platforme enterprise complexe. În acest ghid cuprinzător, vă vom ghida prin fiecare pas necesar pentru a instala Django pe un server de hosting, de la pregătirea mediului Linux la rularea primului proiect și pregătirea acestuia pentru producție.

De ce să alegeți Django pentru aplicația dvs. web?

Înainte de a intra în procesul de instalare, merită să înțelegeți de ce Django continuă să domine peisajul dezvoltării web Python:

  • Baterii incluse: Django vine cu autentificare încorporată, panou de administrare, ORM, gestionare formulare și caracteristici de securitate din cutie.
  • Scalabilitate: Django alimentează platforme cu trafic ridicat precum Instagram și Pinterest.
  • Design cu prioritate pe securitate: Django protejează împotriva vulnerabilităților comune, inclusiv injecție SQL, XSS, CSRF și clickjacking, implicit.
  • Dezvoltare rapidă: Filosofia sa de convenție-peste-configurație permite dezvoltatorilor să lanseze funcții mai rapid.
  • Ecosistem masiv: Mii de pachete reutilizabile și o comunitate mare înseamnă că soluții la aproape orice problemă există deja.

Pentru a profita la maximum de Django, veți dori un mediu de server fiabil. Un plan VPS Hosting vă oferă accesul root, resursele dedicate și flexibilitatea pe care o cer aplicațiile Django.

Cerințe preliminare

Înainte de a începe procesul de instalare, asigurați-vă că aveți următoarele:

  • Un server de hosting care rulează o distribuție Linux (Ubuntu 20.04/22.04 sau Debian sunt recomandate)
  • Acces SSH la server cu privilegii sudo
  • Python 3.8 sau superior (Python 3.10+ recomandat)
  • pip (managerul de pachete al Python) instalat
  • Familiaritate de bază cu linia de comandă Linux

> Pro Tip: Dacă rulați o aplicație Django de producție, evitați mediile de hosting partajat. Un plan VPS Hosting sau un Server Dedicat vă va oferi controlul și performanța de care are nevoie aplicația dvs.

Pasul 1: Conectați-vă la serverul dvs. prin SSH

Deschideți terminalul și stabiliți o conexiune SSH la serverul dvs. de hosting:

ssh username@server_ip

Înlocuiți username cu numele dvs. actual de utilizator și server_ip cu adresa IP publică a serverului dvs. Dacă utilizați un port SSH personalizat sau un fișier de autentificare pe bază de cheie, ajustați comanda în consecință:

ssh -i /path/to/your/key.pem username@server_ip

După conectare, veți avea o interfață de linie de comandă pentru serverul dvs. unde puteți începe procesul de configurare.

Pasul 2: Actualizați sistemul și instalați Python și pip

Menținerea pachetelor sistemului dvs. la zi este un prim pas critic atât pentru securitate, cât și pentru compatibilitate.

Actualizați indexul pachetelor

sudo apt update && sudo apt upgrade -y

Instalați Python 3 și pip

Majoritatea distribuțiilor moderne Ubuntu și Debian vin cu Python 3 pre-instalat. Verificați mai întâi versiunea Python:

python3 --version

Dacă Python 3 nu este instalat, sau aveți nevoie de pip, instalați-le cu:

sudo apt install python3 python3-pip -y

Verificați instalările:

python3 --version
pip3 --version

Ar trebui să vedeți numere de versiune care confirmă că ambele instrumente sunt disponibile.

Pasul 3: Configurați un mediu virtual Python

Utilizarea unui mediu virtual nu este doar recomandată — este considerată o practică recomandată pentru fiecare proiect Python. Mediile virtuale izolează dependențele proiectului dvs. de instalarea Python la nivel de sistem și de alte proiecte pe același server, prevenind conflictele de versiune și păstrând mediul dvs. curat.

Instalați virtualenv

sudo pip3 install virtualenv

Alternativ, puteți utiliza modulul încorporat venv al Python (disponibil în Python 3.3+):

sudo apt install python3-venv -y

Creați directorul proiectului și mediul virtual

Navigați la directorul în care doriți să găzduiți proiectul, sau creați unul nou:

mkdir myproject
cd myproject

Acum creați mediul virtual în directorul proiectului:

virtualenv venv

Sau, utilizând modulul încorporat venv:

python3 -m venv venv

Activați mediul virtual

source venv/bin/activate

După activare, promptul dvs. de comandă se va schimba pentru a afișa numele mediului virtual, de exemplu:

(venv) username@server:~/myproject$

Toate comenzile pip install executate în timp ce mediul virtual este activ vor instala pachete doar în acest mediu izolat. Pentru a-l dezactiva în orice moment, pur și simplu rulați:

deactivate

Pasul 4: Instalați Django

Cu mediul virtual activ, instalați Django folosind pip:

pip install django

Pentru a instala o versiune specifică de Django (recomandată pentru producție pentru a asigura compatibilitatea):

pip install django==4.2

Verificați instalarea:

django-admin --version

Ar trebui să vedeți numărul versiunii Django instalate tipărit în terminal.

Pasul 5: Creați un nou proiect Django

Utilizați instrumentul de linie de comandă django-admin încorporat al Django pentru a crea un nou proiect:

django-admin startproject myproject .

> Notă: Punctul final (.) spune Django să creeze fișierele proiectului în directorul curent, mai degrabă decât să creeze un subdirector imbricat. Aceasta este o structură mai curată pentru majoritatea implementărilor.

Directorul proiectului dvs. va conține acum următoarea structură:

myproject/
├── manage.py
└── myproject/
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
  • manage.py — Un utilitar de linie de comandă pentru interacțiunea cu proiectul Django.
  • settings.py — Fișierul de configurare central pentru proiectul dvs.
  • urls.py — Configurația rutării URL.
  • wsgi.py / asgi.py — Puncte de intrare pentru servere web compatibile cu WSGI și ASGI.

Pasul 6: Configurați setările bazei de date

Deschideți fișierul settings.py pentru a configura conexiunea bazei de date:

nano myproject/settings.py

Implicit: SQLite (doar dezvoltare)

În mod implicit, Django este configurat să utilizeze SQLite, care este potrivit pentru dezvoltare și testare, dar nu este recomandat pentru producție:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

Opțiune de producție: PostgreSQL

PostgreSQL este cea mai frecvent recomandată bază de date pentru Django în producție. Mai întâi, instalați pachetele necesare:

sudo apt install postgresql postgresql-contrib libpq-dev -y
pip install psycopg2-binary

Apoi actualizați setarea DATABASES în settings.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

Opțiune de producție: MySQL / MariaDB

Dacă preferați MySQL sau MariaDB, instalați adaptorul necesar:

sudo apt install default-libmysqlclient-dev -y
pip install mysqlclient

Apoi configurați setarea DATABASES:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

Configurați ALLOWED_HOSTS

În timp ce sunteți în settings.py, actualizați și setarea ALLOWED_HOSTS pentru a include adresa IP sau numele de domeniu al serverului dvs. Aceasta este necesară pentru ca Django să servească cererile în modul non-debug:

ALLOWED_HOSTS = ['your_server_ip', 'yourdomain.com', 'www.yourdomain.com']

Pasul 7: Aplicați migrări de bază de date

Django utilizează un sistem de migrare pentru a gestiona modificările schemei bazei de date. Rulați migrările inițiale pentru a crea toate tabelele necesare ale bazei de date:

python manage.py migrate

Veți vedea o ieșire care listează fiecare migrare care se aplică. O migrare reușită arată ca:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  ...

Creați un superutilizator (opțional, dar recomandat)

Creați un cont de administrator pentru a accesa interfața de administrare încorporată a Django:

python manage.py createsuperuser

Vi se va cere să introduceți un nume de utilizator, o adresă de e-mail și o parolă.

Pasul 8: Rulați serverul de dezvoltare Django

Puteți acum porni serverul de dezvoltare încorporat al Django pentru a verifica instalarea:

python manage.py runserver 0.0.0.0:8000

Această comandă leagă serverul de dezvoltare la toate interfețele de rețea disponibile pe portul 8000. Deschideți browserul web și navigați la:

http://your_server_ip:8000

Ar trebui să vedeți pagina de bun venit a Django — o rachetă cu mesajul „Instalarea a funcționat cu succes! Felicitări!”

Pentru a accesa panoul de administrare, navigați la:

http://your_server_ip:8000/admin

> Important: Serverul de dezvoltare încorporat al Django nu este potrivit pentru producție. Este single-threaded, nu este optimizat pentru performanță și nu are întărire de securitate. Utilizați întotdeauna un server web de calitate producție pentru implementări live.

Pasul 9: Pregătiți Django pentru producție (recomandat)

Pentru implementări de producție, trebuie să configurați o stivă de server web adecvată. Configurația cea mai comună și recomandată este Nginx + Gunicorn.

Instalați Gunicorn

Cu mediul virtual activ:

pip install gunicorn

Testați dacă Gunicorn poate servi aplicația dvs.:

gunicorn --bind 0.0.0.0:8000 myproject.wsgi

Instalați și configurați Nginx

sudo apt install nginx -y

Creați un fișier de configurare bloc server Nginx:

sudo nano /etc/nginx/sites-available/myproject

Adăugați următoarea configurație:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    location = /favicon.ico { access_log off; log_not_found off; }

    location /static/ {
        root /home/username/myproject;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }
}

Activați configurația și reporniți Nginx:

sudo ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

Colectați fișiere statice

Actualizați settings.py cu directorul fișierelor statice:

STATIC_ROOT = BASE_DIR / 'staticfiles'

Apoi colectați toate fișierele statice:

python manage.py collectstatic

Securizați aplicația cu SSL

Pentru orice aplicație Django de producție, HTTPS este indispensabil. Un Certificat SSL criptează datele în tranzit între serverul dvs. și utilizatorii dvs., protejează informațiile sensibile și este necesar pentru indicatorii moderni de încredere a browserului. AlexHost oferă certificatele SSL care se integrează perfect cu mediul dvs. de hosting.

Considerații suplimentare pentru producție

Variabile de mediu pentru setări sensibile

Nu codificați niciodată valori sensibile precum SECRET_KEY, parolele bazei de date sau cheile API în settings.py. Utilizați variabile de mediu în schimb:

pip install python-decouple

În settings.py:

from decouple import config

SECRET_KEY = config('SECRET_KEY')
DEBUG = config('DEBUG', default=False, cast=bool)

Setați DEBUG la False în producție

DEBUG = False

Rularea cu DEBUG = True în producție expune pagini de eroare detaliate și informații de configurare sensibile potențialilor atacatori.

Configurați un nume de domeniu

Dacă nu ați înregistrat deja un domeniu pentru proiectul Django, Înregistrarea domeniilor prin AlexHost ușurează obținerea domeniului dvs. indicat către serverul dvs. rapid, cu gestionarea DNS completă inclusă.

Alegerea hostingului potrivit pentru aplicația Django

Mediul de hosting pe care îl alegeți are un impact semnificativ asupra performanței, fiabilității și scalabilității aplicației Django. Iată un ghid rapid:

Caz de utilizareHosting recomandat
Dezvoltare și testareHosting web partajat
Aplicații de producție mici până la mediiVPS Hosting
Aplicații cu trafic ridicat sau care necesită resurse intensiveServere dedicate
Aplicații Django integrate cu machine learning / AIGPU Hosting

Pentru majoritatea proiectelor Django care intră în producție, un plan VPS Hosting oferă echilibrul ideal între performanță, control și rentabilitate. Obțineți acces root, capacitatea de a instala orice stivă de software și resurse dedicate pe care hostingul partajat nu le poate oferi.

Depanarea problemelor comune de instalare Django

pip: command not found

Instalați pip manual: sudo apt install python3-pip -y

django-admin: command not found

Mediul virtual dvs. poate să nu fie activat

Administrație Securitate Servere dedicate
Linux
Administrație Servere virtuale

Save 15% on All Hosting Services

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul: Skills Începeți
Acces rapid la informații
Acces rapid la informații

Economisiți timp și obțineți un răspuns rapid la întrebarea dvs

Rezolvați singur problemele
Rezolvați singur problemele

Baza de cunoștințe conține tutoriale detaliate, care vă permit să vă ocupați singur de sarcinile tehnice.

Îmbunătățirea competențelor
Îmbunătățirea competențelor

Prin utilizarea bazei de cunoștințe, vă extindeți cunoștințele despre găzduirea web și subiecte conexe

Ilustrații și diagrame
Ilustrații și diagrame

Multe articole sunt însoțite de ilustrații și diagrame, facilitând înțelegerea proceselor și setărilor complexe.

Trucuri utile
Trucuri utile

Veți găsi sfaturi utile pentru a îmbunătăți performanța site-ului sau aplicației dvs.

Relevanța subiectelor date
Relevanța subiectelor date

Informațiile din baza de cunoștințe sunt actualizate periodic pentru a reflecta cele mai recente schimbări și tendințe în domeniul infrastructurii IT și al serviciilor AlexHost

Nu ați găsit subiectul pe care îl căutați? Există o soluție perfectă

Oaspeți și clienți de excepție! Confortul dumneavoastră este prioritatea noastră! Dacă întâmpinați dificultăți în instalarea unui anumit software sau în implementarea unui server, vă rugăm să nu ezitați să ne contactați. Apreciem opinia dvs. și suntem întotdeauna gata să vă ajutăm să vă rezolvați problemele.

În plus, vă oferim posibilitatea de a participa activ la crearea bazei noastre de cunoștințe. Dacă aveți subiecte sau întrebări pe care ați dori să le includeți în baza noastră de date, anunțați-ne! Suntem pregătiți să scriem articole și ghiduri detaliate pe baza nevoilor dvs.

Ne străduim să vă facem experiența cu AlexHost cât mai convenabilă și eficientă posibil, iar contribuția dvs. la baza de cunoștințe ne ajută să atingem acest obiectiv. Contactați-ne ->
info@alexhost.com și spuneți-ne cum putem face șederea dvs. la noi și mai bună.

Solution Image