Rumah >pembangunan bahagian belakang >Tutorial Python >Permohonan Django untuk pengeluaran sedia

Permohonan Django untuk pengeluaran sedia

DDD
DDDasal
2024-10-19 06:13:021101semak imbas

Django application for production ready

Untuk menyediakan aplikasi Django bagi pengeluaran dengan keperluan berikut, anda boleh mengikuti langkah yang digariskan di bawah:

  1. Konfigurasikan Baldi AWS S3 untuk Fail Media:

Pasang boto3 dan storage django untuk menyepadukan AWS S3 dengan apl Django anda:

pip pasang boto3 django-storages

Kemas kini tetapan Django (settings.py) untuk mengkonfigurasi AWS S3:

settings.py

Konfigurasi AWS S3

ID_KEY_AWS_ACCESS = 'kunci-akses anda'
AWS_SECRET_ACCESS_KEY = 'kunci-rahsia-anda'
AWS_STORAGE_BUCKET_NAME = 'nama baldi-anda'
AWS_S3_REGION_NAME = 'wilayah-anda' # cth., 'us-timur-1'
AWS_S3_CUSTOM_DOMAIN = f'{AWS_STORAGE_BUCKET_NAME}.s3.amazonaws.com'

Konfigurasi fail media

URL_MEDIA = f'https://{AWS_S3_CUSTOM_DOMAIN}/media/'
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

  1. Konfigurasikan Pangkalan Data PostgreSQL pada Render:

Sediakan pangkalan data anda pada Render dan catatkan butiran sambungan.

Pasang psycopg2 untuk menyambungkan Django dengan PostgreSQL:

pip pasang psycopg2-binary

Kemas kini tetapan anda.py:

settings.py

PANGKALAN DATA = {
'lalai': {
'ENGINE': 'django.db.backends.postgresql',
'NAMA': 'nama-db-anda',
'USER': 'your-db-user',
'KATAlaluan': 'kata laluan-db-anda',
'HOST': 'your-db-host',
'PORT': 'port-db-anda',
}
}

  1. Layankan Fail Statik Menggunakan WhiteNoise:

Pasang WhiteNoise untuk menyampaikan fail statik:

pip pasang whitenoise

Kemas kini MIDDLEWARE dan STATICFILES_STORAGE dalam tetapan anda.py:

settings.py

PERTENGAHAN = [
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware', # Tambahkan ini selepas SecurityMiddleware
# Perisian tengah lain
]

Fail statik (CSS, JavaScript, Imej)

URL_STATIC = '/statik/'
STATIC_ROOT = BASE_DIR / 'staticfiles'

Konfigurasi WhiteNoise

STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

  1. Tetapan Pengeluaran Tambahan:

Tetapan Keselamatan:

settings.py

DEBUG = Palsu
ALLOWED_HOSTS = ['your-domain.com', 'your-render-subdomain.onrender.com']

Tetapan keselamatan

SECURE_SSL_REDIRECT = Benar
SESSION_COOKIE_SECURE = Benar
CSRF_COOKIE_SECURE = Benar

Kumpul Fail Statik: Jalankan arahan berikut untuk mengumpul semua fail statik:

python manage.py collectstatic

  1. Gunakan pada Render:

Sediakan projek anda pada Render dengan menyambung ke repositori GitHub anda.

Tentukan pembolehubah persekitaran pada platform Render untuk tetapan Django anda (cth., AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, DJANGO_SECRET_KEY, dll.).

Konfigurasikan arahan binaan dan mulakan:

Membina Perintah

pip install -r requirements.txt

Mulakan Perintah

gunicorn your_project_name.wsgi:application

Mengikut langkah ini akan memastikan aplikasi Django anda sedia untuk pengeluaran, dengan fail media dihoskan pada AWS S3, pangkalan data PostgreSQL pada Render dan fail statik yang disiarkan dengan cekap menggunakan WhiteNoise.

Atas ialah kandungan terperinci Permohonan Django untuk pengeluaran sedia. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn