ImportError: нет модуля с именем flask_sqlalchemy, referer: http://localhost/

#python #apache #flask #apache2 #flask-sqlalchemy

#python #apache #flask #apache2 #flask-sqlalchemy

Вопрос:

Я использую flask_sqlalchemy, все выглядит хорошо из оболочки python, и мой скрипт тоже работает нормально, проблем нет, но apache2/error.log выдает мне это

 [Sat Oct 01 21:37:39.222205 2016] [mpm_event:notice] [pid 9722:tid 140236156835712] AH00489: Apache/2.4.18 (Ubuntu) mod_wsgi/4.3.0 Python/2.7.12 configured -- resuming normal operations
[Sat Oct 01 21:37:39.222234 2016] [core:notice] [pid 9722:tid 140236156835712] AH00094: Command line: '/usr/sbin/apache2'
[Sat Oct 01 21:37:45.141310 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274] mod_wsgi (pid=9725): Target WSGI script '/var/www/FlaskApp/flaskapp.wsgi' cannot be loaded as Python module., referer: http://localhost/
[Sat Oct 01 21:37:45.141418 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274] mod_wsgi (pid=9725): Exception occurred processing WSGI script '/var/www/FlaskApp/flaskapp.wsgi'., referer: http://localhost/
[Sat Oct 01 21:37:45.141488 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274] Traceback (most recent call last):, referer: http://localhost/
[Sat Oct 01 21:37:45.141551 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274]   File "/var/www/FlaskApp/flaskapp.wsgi", line 7, in <module>, referer: http://localhost/
[Sat Oct 01 21:37:45.141710 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274]     from FlaskApp import app as application, referer: http://localhost/
[Sat Oct 01 21:37:45.141754 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274]   File "/var/www/FlaskApp/FlaskApp/__init__.py", line 2, in <module>, referer: http://localhost/
[Sat Oct 01 21:37:45.141883 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274]     from flask_sqlalchemy import SQLAlchemy, referer: http://localhost/
[Sat Oct 01 21:37:45.141967 2016] [wsgi:error] [pid 9725:tid 140235983812352] [client 174.58.31.189:39274] ImportError: No module named flask_sqlalchemy, referer: http://localhost/
  

я установил модуль, я знаю, потому что скрипт работает и не жалуется на отсутствие какого-либо модуля, но каким-то образом apache2 выдает ошибку сервера 500. я начал получать ошибку сервера после flask_sqlalchemy

Редактировать:

это ошибка, которую я получаю, знаю, что я много чего перепробовал, чтобы исправить это, но нет, в нем говорится, что форма имени модуля не может быть найдена, но это модуль, который я создал сам, он работал нормально, но с тех пор, как я установил wsgi для python3, это начало происходить

 tail /var/log/apache2/error.log
[Sun Oct 02 21:03:38.594947 2016] [mpm_event:notice] [pid 29438:tid 139888375388032] AH00489: Apache/2.4.18 (Ubuntu) mod_wsgi/4.3.0 Python/3.5.2 configured -- resuming normal operations
[Sun Oct 02 21:03:38.594997 2016] [core:notice] [pid 29438:tid 139888375388032] AH00094: Command line: '/usr/sbin/apache2'
[Sun Oct 02 21:03:44.952537 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546] mod_wsgi (pid=29441): Target WSGI script '/var/www/FlaskApp/flaskapp.wsgi' cannot be loaded as Python module., referer: http://localhost/
[Sun Oct 02 21:03:44.952791 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546] mod_wsgi (pid=29441): Exception occurred processing WSGI script '/var/www/FlaskApp/flaskapp.wsgi'., referer: http://45.55.236.208/
[Sun Oct 02 21:03:44.953945 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546] Traceback (most recent call last):, referer: http://localhost/
[Sun Oct 02 21:03:44.954113 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546]   File "/var/www/FlaskApp/flaskapp.wsgi", line 7, in <module>, referer: http://localhost/
[Sun Oct 02 21:03:44.954148 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546]     from FlaskApp import app as application, referer: http://localhost/
[Sun Oct 02 21:03:44.954212 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546]   File "/var/www/FlaskApp/FlaskApp/__init__.py", line 3, in <module>, referer: http://localhost/
[Sun Oct 02 21:03:44.954239 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546]     from form import LoginForm, referer: http://localhost/
[Sun Oct 02 21:03:44.954361 2016] [wsgi:error] [pid 29441:tid 139888158570240] [client 174.58.31.189:40546] ImportError: No module named 'form', referer: http://localhost/
  

form.py

 from wtforms import Form,StringField, PasswordField, TextField, BooleanField, SubmitField, validators

class LoginForm(Form):  

    username_signin = StringField('SigninU', [validators.Required('please enter name')])
    password_signin = PasswordField('signinP', [validators.Required('need password')])
    submit_signin = SubmitField('Signin')
  

кстати, мой form.py файл находится в том же каталоге, что и app.py это должно привести к его выполнению

Комментарии:

1. Возможно, вы установили два Python, и Apache (или, скорее mod_wsgi ) использует другую версию Python, в которой нет установленной flask_sqlalchemy.

2. Насколько я знаю, я использую python3 по умолчанию, я запустил python3 до того, как установил flask_sqlalchemy

3. В вашем журнале Python/2.7.12 so Apache/mod_wsgi не использует Python 3

4. Ооо, я вижу, вы знаете простой способ заставить wsgi указывать на python3 спасибо

5. Спасибо, я уже решил это