Ошибка при попытке запустить mod_wsgi на сервере Apache - PullRequest
0 голосов
/ 02 сентября 2018

У меня есть каталог структуры Flask Project внутри / var / www :

item-catalog-fullstacknd\
    itemCatalogApp.wsgi
    itemCatalogApp\
        __init__.py

Это файл WSGI выше:

import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/item-catalog-fullstacknd/")
from itemCatalogApp import app as application
application.secret_key = 'Add your secret key' 

Это / etc / apache2 / sites-enabled / 000-default.conf

WSGIPythonPath /var/www/item-catalog-fullstacknd/itemCatalogApp/
<VirtualHost *:80>
    WSGIScriptAlias / /var/www/item-catalog-fullstacknd/itemCatalogApp.wsgi

            <Directory /var/www/item-catalog-fullstacknd/itemCatalogApp>
                    Order allow,deny
                    Allow from all
            </Directory>

            Alias /static /var/www/item-catalog-fullstacknd/itemCatalogApp/static

            <Directory /var/www/item-catalog-fullstacknd/itemCatalogApp/static/>
                    Order allow,deny
                    Allow from all
            </Directory>

</VirtualHost>

И я получаю следующую ошибку:

mod_wsgi (pid=17586): Exception occurred processing WSGI script '/var/www/item-catalog-fullstacknd/itemCatalogApp.wsgi'.
 Traceback (most recent call last):
   File "/var/www/item-catalog-fullstacknd/itemCatalogApp.wsgi", line 6, in <module>
     from itemCatalogApp import app as application
   File "/var/www/item-catalog-fullstacknd/itemCatalogApp/__init__.py", line 3, in <module>
     from flask import Flask, jsonify, render_template, request
 ImportError: No module named flask

Я уже pip install все модули, содержащиеся в файле requirements.txt. Я понятия не имею, что делать дальше.

1 Ответ

0 голосов
/ 03 сентября 2018

Возможно, вы установили модули для другого исполняемого файла python, а не того, который ваш mod_wsgi использует по умолчанию. Чтобы проверить это, добавьте к начало вашего файла WSGI:

import sys
print(sys.executable)

Затем откройте оболочку, запустите python и введите там тот же код. Если путь отличается, вы должны указать WSGIPythonHome, чтобы указать на требуемый исполняемый файл python .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...