mod_wsgi httpd和Flask应用程序的导入错误
问题描述:
好的,这是我在有人试图访问服务器时收到的错误。 (从error_log中)mod_wsgi httpd和Flask应用程序的导入错误
错误
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] mod_wsgi (pid=19122): Target WSGI script '/var/www/QuickSearch/quicksearch.wsgi' cannot be loaded as Python module.
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] mod_wsgi (pid=19122): Exception occurred processing WSGI script '/var/www/QuickSearch/quicksearch.wsgi'.
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] Traceback (most recent call last):
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] File "/var/www/QuickSearch/quicksearch.wsgi", line 12, in <module>
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] from quicksearch import app
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] File "/var/www/QuickSearch/QuickSearch/quicksearch.py", line 5, in <module>
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] from flask import Flask
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] File "/usr/lib/python2.6/site-packages/flask/__init__.py", line 19, in <module>
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] from jinja2 import Markup, escape
[Wed Dec 14 11:49:12 2016] [error] [client 10.0.2.15] ImportError: No module named jinja2
我的目录
quicksearch.py是主要的应用,剩下的就是HTML ECT的网站
/var/www/QuickSearch/
|-- QuickSearch
| |-- __init__.py
| |-- quicksearch.py
| |-- static
| | |-- css
| | |-- fonts
| | `-- js
| `-- templates
`-- quicksearch.wsgi
quicksearch.wsgi
#!/usr/bin/env /usr/prod/mts/platform/sandboxes/rhel6/mts-build-09/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
activate_this = '/var/www/QuickSearch/QuickSearch/venv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
sys.path.insert(0,"/var/www/QuickSearch/QuickSearch/")
sys.path.append("/var/www/QuickSearch/")
from quicksearch import app as application
quicksearch.conf
这是服务器
WSGIPythonPath "/var/www/QuickSearch/QuickSearch/venv/lib64/python2.7/site-packages"
<VirtualHost *:80>
ServerName 10.0.2.15
WSGIScriptAlias//var/www/QuickSearch/quicksearch.wsgi
WSGIScriptReloading On
<Directory /var/www/QuickSearch/QuickSearch/>
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
我完全茫然的配置文件,我一直在试图解决这一两天,不知道下一步怎么办。我已经看过类似的线程,但仍未找到解决方案。如果您需要任何信息来帮助解决此问题,请发布。谢谢。
答
您的mod_wsgi是为Python 2.6编译的。你不能强迫它使用Python 2.7的Python虚拟环境。这是mod_wsgi的文件在解释对Python的虚拟环境:
您需要安装哪些被编译为Python 2.7 mod_wsgi的版本。