J'ai un petit projet et j'essaie de créer un site web en utilisant Django, Apache 2 et mod_wsgi. Tout fonctionne bien sur le serveur de développement de Django, et je peux aussi ouvrir la page d'accueil de mon site en utilisant apache. Toutefois, lorsque j'essaie de me connecter à la page d'administration ou d'utiliser ma propre page de connexion personnalisée, j'obtiens une erreur de serveur (500). Quelqu'un peut-il me dire ce que je fais mal?Erreur de serveur (500) en essayant de se connecter à la page d'administration de Django
settings.py:
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
SECRET_KEY = ...
DEBUG = True
ALLOWED_HOSTS = ["localhost", "192.168.0.121", "127.0.0.1"]
LOGIN_REDIRECT_URL='/account'
LOGOUT_REDIRECT_URL='/login'
INSTALLED_APPS = [
'account.apps.AccountConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
MIDDLEWARE = [
'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 = 'kraken.urls'
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')]
,
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
WSGI_APPLICATION = 'kraken.wsgi.application'
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static/")
000-default.conf:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html
Alias /static /home/pi/kraken/static
Alias /favicon.ico /home/pi/kraken/static/favicon.ico
<Directory /home/pi/kraken/static>
Require all granted
</Directory>
<Directory /home/pi/kraken/kraken>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess kraken python-path=/home/pi/kraken python-home=/home/pi/.conda/envs/django
WSGIProcessGroup kraken
WSGIScriptAlias//home/pi/kraken/kraken/wsgi.py
</VirtualHost>
je chown: www-data sur ma base de données et mon dossier de projet
Vous devez rechercher dans le journal d'erreurs Apache le motif de l'erreur. Si rien ne s'affiche, définissez temporairement '' DEBUG = True'' dans le fichier de paramètres Django et redémarrez le serveur Web. Si l'erreur provient de Django, l'erreur apparaîtra dans le navigateur. –
Merci Graham, j'ai trouvé ce qui n'allait pas, voir ma réponse. – Fork2