Tôi đang tìm hiểu khuôn khổ Django và có thể chạy ứng dụng đầu tiên của mình trên máy chủ phát triển bằng cách sử dụng:
python3 manage.py máy chủ
Tuy nhiên, điều tôi thực sự muốn làm là cung cấp ứng dụng của mình với Apache để có thể truy cập ứng dụng đó từ web. Máy chủ ảo Apache của tôi là:
<VirtualHost *:443>
ServerName django.example.com
DocumentRoot /var/www/django/hello_world/mysite
WSGIScriptAlias / /var/www/django/hello_world/mysite/mysite/wsgi.py
Include /etc/letsencrypt/options-ssl-apache.conf
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/django.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/django.example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/django.example.com/chain.pem
WSGIDaemonProcess django.sample.com processes=2 threads=15 display-name=%{GROUP} python-home=/var/www/django/hello_world/mysite/venv/lib/python3.6
WSGIProcessGroup django.sample.com
<directory /var/www/django/hello_world/mysite>
AllowOverride all
Require all granted
Options FollowSymlinks
</directory>
</VirtualHost>
Như bạn có thể thấy, đây không phải là một ứng dụng phức tạp mà tôi đang cố chạy, chỉ là trang bắt đầu mặc định của Django, nhưng tôi nhận được:
Tệp settings.py của tôi là:
từ đường dẫn nhập pathlib
BASE_DIR = Đường dẫn(__file__).resolve().parent.parent
SECRET_KEY = 'django-insecure-3b^iz&pognt=yt5m&(!w@keo&*@a9zb&)$n@32v!yj4w%c!k-4'
GỠ LỖI = Đúng
ALLOWED_HOSTS = [ 'django.sample.com' ]
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.message',
'django.contrib.staticfiles',
]
PHẦN MỀM TRUNG GIAN = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
ROOT_URLCONF = 'mysite.urls'
MẪU = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': Đúng,
'TÙY CHỌN': {
'bối cảnh_bộ xử lý': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
WSGI_APPLICATION = 'mysite.wsgi.application'
AUTH_PASSWORD_VALIDATORS = [
{
'TÊN': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'TÊN': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'TÊN': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'TÊN': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = Đúng
USE_L10N = Đúng
USE_TZ = Đúng
STATIC_URL = '/static/'
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
Tôi đang chạy Apache 2.4.6, CentOS 7. Cảm ơn bạn đã trợ giúp.