Вам необходимо удалить apt
версию, установить mod_wsgi
с pip
в среде, которая будет использоваться, а затем связать установленныйmod_wsgi
на Apache. Вот ответ, который работал для меня: https://stackoverflow.com/a/30682386/4454597
Установите mod_wsgi в Ubuntu с Python 3.6, Apache 2.4 и Django 1.11
Как получить mod_wsgi для Apache2, который был скомпилирован для Python 3.6.1?
(или любая будущая версия Python)
Я использую виртуальную среду Python 3.6.1 с Django 1.11, и все работает в соответствии с журналом ошибок Apache, за исключением того, что mod_wsgi для Apache 2.4 был скомпилирован для Python / 3.5.1 + и использует Python / 3.5.2, поэтому мой Python 3.6 .1 код не работает, потому что я использую новые функции, недоступные в 3.5.2
Все остальные конфигурации и установки, участвующие в настройке моей системы, кажутся нормальными (работает в режиме демона), хотя mod_wsgi, похоже, не использует мою виртуальную среду Python 3.6.1 (хотя пытается использовать ее для Django согласно в журнал ошибок) ...
Я использовал: sudo apt-get install libapache2-mod-wsgi-py3
для установки mod_wsgi для Apache 2.4
Я использовал: ./configure --with-python=/usr/local/bin/python3.6
и make
с, make install
чтобы установить mod_wsgi для Python 3.6
Должно быть, я что-то не так делаю - поправьте меня!
Вот мой журнал ошибок Apache (немного очищен) - и да, я знаю, что он не работает в строке "f" "(функция python 3.6 отсутствует в 3.5)
[wsgi:warn] mod_wsgi: Compiled for Python/3.5.1+. [wsgi:warn] mod_wsgi: Runtime using Python/3.5.2. [wsgi:warn] AH00489: Apache/2.4.18 (Ubuntu) mod_wsgi/4.3.0 Python/3.5.2 configured -- resuming normal operations [wsgi:warn] AH00094: Command line: '/usr/sbin/apache2' [wsgi:error] mod_wsgi (pid=12963): Target WSGI script '/home/jamin/www/dev.tir.com/tir/tir/wsgi.py' cannot be loaded as Python module. [wsgi:error] mod_wsgi (pid=12963): Exception occurred processing WSGI script '/home/jamin/www/dev.tir.com/tir/tir/wsgi.py'. [wsgi:error] Traceback (most recent call last): [wsgi:error] File "/home/jamin/www/dev.tir.com/tir/tir/wsgi.py", line 21, in <module> [wsgi:error] application = get_wsgi_application() [wsgi:error] File "/home/jamin/www/dev.tir.com/py361ve/lib/python3.6/site-packages/django/core/wsgi.py", line 13, in get_wsgi_application [wsgi:error] django.setup(set_prefix=False) [wsgi:error] File "/home/jamin/www/dev.tir.com/py361ve/lib/python3.6/site-packages/django/__init__.py", line 27, in setup [wsgi:error] apps.populate(settings.INSTALLED_APPS) [wsgi:error] File "/home/jamin/www/dev.tir.com/py361ve/lib/python3.6/site-packages/django/apps/registry.py", line 116, in populate [wsgi:error] app_config.ready() [wsgi:error] File "/home/jamin/www/dev.tir.com/py361ve/lib/python3.6/site-packages/django/contrib/admin/apps.py", line 23, in ready [wsgi:error] self.module.autodiscover() [wsgi:error] File "/home/jamin/www/dev.tir.com/py361ve/lib/python3.6/site-packages/django/contrib/admin/__init__.py", line 26, in autodiscover [wsgi:error] autodiscover_modules('admin', register_to=site) [wsgi:error] File "/home/jamin/www/dev.tir.com/py361ve/lib/python3.6/site-packages/django/utils/module_loading.py", line 50, in autodiscover_modules [wsgi:error] import_module('%s.%s' % (app_config.name, module_to_search)) [wsgi:error] File "/usr/lib/python3.5/importlib/__init__.py", line 126, in import_module [wsgi:error] return _bootstrap._gcd_import(name[level:], package, level) [wsgi:error] File "<frozen importlib._bootstrap>", line 986, in _gcd_import [wsgi:error] File "<frozen importlib._bootstrap>", line 969, in _find_and_load [wsgi:error] File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked [wsgi:error] File "<frozen importlib._bootstrap>", line 673, in _load_unlocked [wsgi:error] File "<frozen importlib._bootstrap_external>", line 665, in exec_module [wsgi:error] File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed [wsgi:error] File "/home/jamin/www/dev.tir.com/tir/company/admin.py", line 13, in <module> [wsgi:error] from .forms import AdminInteractionForm [wsgi:error] File "/home/jamin/www/dev.tir.com/tir/company/forms.py", line 87 [wsgi:error] resp = f"Hi, you'll need to login to send any more suggestions. \\ [wsgi:error] \\n\\nFirst Time? Check your email/spam for login instructions from us." [wsgi:error] [wsgi:error] ^ [wsgi:error] SyntaxError: invalid syntax
* также tir.com является сокращением для моего сайта - я не имею никакого отношения к этому домену
1 ответ на вопрос
Похожие вопросы
-
4
Требуется хороший бесплатный образ Ubuntu Server VMWare
-
1
Обратный прокси Apache
-
3
Как я могу создать оглавление для документа уценки с помощью Python / AWK / SED?
-
-
1
Чтобы установить расширения Markdown с помощью Python
-
9
Является ли Python только для создания бэкэндов при создании сайтов?
-
4
Для запуска Python внутри HTML-файла аналогично PHP
-
2
Чтобы установить Gaphor от Easy_install и его зависимости от MacPorts
-
3
Ubuntu Server с рабочим окружением GNOME - настройка разрешений файла конфигурации Apatche
-
2
Nokia E71 - режим USB и Linux и Python
-
8
Как я могу дать права на запись в папку всем пользователям Linux?