python - WSGI 在同一目录中找不到导入
问题描述
我正在尝试使用 Apache 和 WSGI 部署 Flask 服务器,但在加载应用程序的主页时出现 500 错误。Flask 和 Apache 本身似乎连接得很好,但是当我查看我的 Apache 日志时,我收到以下错误ModuleNotFoundError: No module named 'keys'
,因为我的文件与keys.py
我的 Flask 文件位于同一目录__init__.py
中。
我.conf
在 Apache 的可用站点中的文件如下:
<VirtualHost *:80>
ServerName SERVER'S IP
ServerAdmin email@email.com
WSGIScriptAlias / /var/www/FlaskApp/FlaskApp.wsgi
<Directory /var/www/FlaskApp/FlaskApp/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/FlaskApp-error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/FlaskApp-access.log combined
</VirtualHost>
我的 .wsgi 文件如下:
#!/usr/bin/python3.6
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp/")
from FlaskApp import app as application
我的目录结构如下:
解决方案
在您的 wsgi.py 文件中,更改:
sys.path.insert(0,"/var/www/FlaskApp/")
经过 :
sys.path.insert(0,"/var/www/FlaskApp/myproject")
推荐阅读
- python - 将 json 对象中的特定名称-值对顺序附加到 csv 文件
- rcpp - R::runif() 和 Rcpp::runif() 之间的区别
- python - 如何通过使用 itemgetter 的列表值对字典进行排序?
- python - 如何从我的列表和python中的元组中删除空白引号?
- xamarin - Azure Devops 构建失败:未找到具有提供的指纹的证书
- javascript - 我如何在不和谐 v12 中列出角色中的所有成员?
- python - cadytsiterate.py 的输入是什么?
- dataframe - 如何过滤朱莉娅数据框?
- kotlin - 如何找到默认的 kotlin 编译器参数值?
- r - R语言定义:使用美元符号索引命名向量