Попытка доставить мое приложение в производство было беспокойным.
Я получаю синтаксическую ошибку, когда проверяю журнал ошибок apache после звонка на сайт.
Я сделал все каквидел в разных источниках онлайн, но я не могу передать ошибку.Основная проблема в том, что я даже не понимаю, почему синтаксическая ошибка внутренней функции Django, когда приложение обычно работает над разработкой без заминок.
Ошибка, которую я получаю, показана ниже
[Tue Jun 05 08:13:34.179813 2018] [:error] [pid 1390] [remote ::1:0] File "/var/www/html/app_folder/app/index.wsgi", line 29, in <module>
[Tue Jun 05 08:13:34.179860 2018] [:error] [pid 1390] [remote ::1:0] import django.core.handlers.wsgi
[Tue Jun 05 08:13:34.179869 2018] [:error] [pid 1390] [remote ::1:0] File "/home/user/.virtualenvs/app/lib/python3.6/site-packages/django/__init__.py", line 1, in <module>
[Tue Jun 05 08:13:34.179900 2018] [:error] [pid 1390] [remote ::1:0] from django.utils.version import get_version
[Tue Jun 05 08:13:34.179907 2018] [:error] [pid 1390] [remote ::1:0] File "/home/user/.virtualenvs/app/lib/python3.6/site-packages/django/utils/version.py", line 2, in <module>
[Tue Jun 05 08:13:34.179954 2018] [:error] [pid 1390] [remote ::1:0] import functools
[Tue Jun 05 08:13:34.179982 2018] [:error] [pid 1390] [remote ::1:0] File "/home/user/.virtualenvs/app/lib/python3.6/functools.py", line 254
[Tue Jun 05 08:13:34.179986 2018] [:error] [pid 1390] [remote ::1:0] cls, func, *args = args
[Tue Jun 05 08:13:34.179988 2018] [:error] [pid 1390] [remote ::1:0] ^
[Tue Jun 05 08:13:34.179990 2018] [:error] [pid 1390] [remote ::1:0] SyntaxError: invalid syntax
Вот содержимое моего wsgi-файла:
import os
import sys
import site
#import django
# Add the site-packages of the chosen virtualenv to work with
site.addsitedir('/home/user/.virtualenvs/app/lib/python3.6/site-packages')
# Add the app's directory to the PYTHONPATH
sys.path.append('/var/www/html/app_folder')
sys.path.append('/var/www/html/app_folder/app')
os.environ['DJANGO_SETTINGS_MODULE'] = 'app.settings'
# Activate your virtual env
activate_env=os.path.expanduser("/home/user/.virtualenvs/app/bin/activate_this.py")
execfile(activate_env, dict(__file__=activate_env))
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Django version 2.0.4
Python version 3.6
Apache Config:
<VirtualHost *:9000>
ServerAdmin webmaster@server.com
ServerName test.server.com
ServerAlias test.server.com
WSGIDaemonProcess app processes=5 python-path=/var/html/www/app_folder/app:/home/user/.virtualenvs/app/lib/python3.6/site-packages:/home/user/.virtualenvs/app/lib/python3.6/ threads=1
WSGIProcessGroup app
WSGIScriptAlias / /var/www/html/app_folder/app/index.wsgi
Alias /static/ /var/www/html/app_folder/app/static/
<Location "/static/">
Options -Indexes
</Location>
Мы будем очень признательны за вашу помощь, так как это чрезвычайная ситуация.