Python Apache WSGI无法导入内部模块
我正在尝试配置Apache以部署我的Flask应用程序。如果我运行命令“pythonflaskapp.py”,它就可以工作,但对于Apache,它不能导入内部模块工具 这是我的烧瓶应用程序Python Apache WSGI无法导入内部模块,python,apache,flask,mod-wsgi,Python,Apache,Flask,Mod Wsgi,我正在尝试配置Apache以部署我的Flask应用程序。如果我运行命令“pythonflaskapp.py”,它就可以工作,但对于Apache,它不能导入内部模块工具 这是我的烧瓶应用程序 from flask import Flask app = Flask(__name__) import sys sys.path.append('tools') import Tools #if i comment this line, not error display and app works ok
from flask import Flask
app = Flask(__name__)
import sys
sys.path.append('tools')
import Tools #if i comment this line, not error display and app works ok!
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
这是我的.conf文件
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
WSGIDaemonProcess flaskapp python-path=/var/www/html/flaskapp
WSGIScriptAlias / /var/www/html/flaskapp/flaskapp.wsgi process-group=flaskapp application-group=%{GLOBAL}
<Directory /var/www/html/flaskapp>
<Files flaskapp.wsgi>
Order allow,deny
Allow from all
</Files>
</Directory>
Alias /static /var/www/html/flaskapp/static
<Directory /var/www/html/flaskapp/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
我的应用程序文件夹ar/var/www/html/
flaskapp/
-flaskapp.py
-flaskapp.wsgi
-static/
-templates/
-tools/
-Tools.py
错误日志
[Thu Mar 09 18:23:23.634661 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] mod_wsgi (pid=3711): Target WSGI script '/var/www/html/flaskapp/flaskapp.wsgi' cannot be loaded as Python module.
[Thu Mar 09 18:23:23.634694 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] mod_wsgi (pid=3711): Exception occurred processing WSGI script '/var/www/html/flaskapp/flaskapp.wsgi'.
[Thu Mar 09 18:23:23.634719 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] Traceback (most recent call last):
[Thu Mar 09 18:23:23.634734 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] File "/var/www/html/flaskapp/flaskapp.wsgi", line 4, in <module>
[Thu Mar 09 18:23:23.634755 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] from flaskapp import app as application
[Thu Mar 09 18:23:23.634762 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] File "/var/www/html/flaskapp/flaskapp.py", line 6, in <module>
[Thu Mar 09 18:23:23.634771 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] import Tools
[Thu Mar 09 18:23:23.634783 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] ImportError: No module named Tools
[Thu Mar 09 18:23:23.634661 2017][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]mod_wsgi(pid=3711):目标wsgi脚本'/var/www/html/flaskapp/flaskapp.wsgi'不能作为Python模块加载。
[Thu Mar 09 18:23:23.634694 2017][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]mod_wsgi(pid=3711):处理wsgi脚本'/var/www/html/flaskapp/flaskapp.wsgi'时发生异常。
[2017年3月9日星期四18:23:23.634719][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]回溯(最近一次呼叫最后一次):
[2017年3月9日星期四18:23:23.634734][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]文件“/var/www/html/flaskapp/flaskapp.wsgi”,第4行
[2017年3月9日星期四18:23:23.634755][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]从flaskapp导入应用程序作为应用程序
[2017年3月9日星期四18:23:23.634762][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]文件“/var/www/html/flaskapp/flaskapp.py”,第6行,在
[2017年3月9日星期四18:23:23.634771][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]导入工具
[2017年3月9日星期四18:23:23.634783][wsgi:error][pid 3711:tid 140422583609088][remote 200.69.225.201:9142]导入错误:没有名为Tools的模块
扩展sys.path
时不能使用相对目录。这是因为当前工作目录不在代码所在的位置。请参见您的目录中是否有任何\uuuuu init\uuuuuu.py
文件。现在它不是一个包,因此为什么flaskapp.tools导入工具的不起作用,至少对于Python 2.7来说是这样。添加init.py和模块的完整路径可以起作用
[Thu Mar 09 18:23:23.634661 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] mod_wsgi (pid=3711): Target WSGI script '/var/www/html/flaskapp/flaskapp.wsgi' cannot be loaded as Python module.
[Thu Mar 09 18:23:23.634694 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] mod_wsgi (pid=3711): Exception occurred processing WSGI script '/var/www/html/flaskapp/flaskapp.wsgi'.
[Thu Mar 09 18:23:23.634719 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] Traceback (most recent call last):
[Thu Mar 09 18:23:23.634734 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] File "/var/www/html/flaskapp/flaskapp.wsgi", line 4, in <module>
[Thu Mar 09 18:23:23.634755 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] from flaskapp import app as application
[Thu Mar 09 18:23:23.634762 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] File "/var/www/html/flaskapp/flaskapp.py", line 6, in <module>
[Thu Mar 09 18:23:23.634771 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] import Tools
[Thu Mar 09 18:23:23.634783 2017] [wsgi:error] [pid 3711:tid 140422583609088] [remote 200.69.225.201:9142] ImportError: No module named Tools