如何解决带有Apache2的Flask应用程序找不到路径
我在带有Apache 2的Ubuntu VPS Server 18.04上部署了flask应用程序,但是该服务器找不到除/static
之外的路径。由于这些路径,我的应用程序宕机的每条路线都失败了,我也不知道该怎么办。这是我的服务器配置文件:
<VirtualHost *:80>
ServerName <ServerName >
ServerAdmin <ServerAdmin>
WsgiScriptAlias / /var/www/FlaskApp/flaskapp.wsgi
<Directory /var/www/FlaskApp/FlaskApp/>
Order allow,deny
Allow from all
</Directory>
Alias /static /var/www/FlaskApp/FlaskApp/static
<Directory /var/www/FlaskApp/FlaskApp/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
顺便说一句,树是
FlaskApp
├── FlaskApp
│ ├── pycache
│ ├── data
│ │ ├── categories [CONTAINS JSON FILES]
│ │ ├── details [CONTAINS JSON FILES]
│ │ └── products [CONTAINS JSON FILES]
│ ├── static
│ │ ├── css
│ │ ├── images
│ │ │ ├── categories
│ │ │ ├── details
│ │ │ ├── home
│ │ │ ├── logo
│ │ │ ├── products
│ │ │ └── special
│ │ │ ├── products
│ │ │ └── references
│ │ └── js
│ └── templates
│ ├── admin
│ ├── security
│ ├── special
│ │ └── tools
│ └── tools
└── venv
└── flaskapp.wsgi
flaskapp.wsgi;
#!/usr/bin/python3
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp/")
from FlaskApp import app as application
application.secret_key = '<secret_key>'
这是我遇到的错误之一;
[Tue Sep 29 13:55:27.099228 2020] [wsgi:error] [pid 25676] [client "address"] FileNotFoundError: [Errno 2] No such file or directory: '/data/categories/categories.json',referer: "address"
谢谢。
解决方法
也许您可以尝试将os.getcwd()
或os.path.abspath(".")
添加到所有路径前缀。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。