【发布时间】:2017-11-28 06:44:54
【问题描述】:
我正在尝试使用 apache2 和 wsgi 设置 Ubuntu 服务器,但出现 500 内部错误。 WSGI 找不到文件“client_secrets.json”。
应用结构
/var/www/FlaskApp/
flaskapp.wsgi
- FlaskApp
- static
// All js, css, imgs and fonts
- templates
// All templates in here
__init__.py
client_secrets.json
database_setup.py
starter_content.py
初始化.py
app = Flask(__name__)
CLIENT_ID = json.loads(
open('client_secrets.json', 'r').read())['web']['client_id']
APPLICATION_NAME = "Catalog App"
if __name__ == '__main__':
app.secret_key = 'super_secret_key'
app.debug = True
app.run(host='0.0.0.0', port=5000)
flaskapp.wsgi:
#!/usr/bin/python
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 = 'MY_SECRET_KEY'
/etc/apache2/sites-available/FlaskApp.conf:
<VirtualHost *:80>
ServerName SERVER_IP
ServerAdmin email@email.com
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>
【问题讨论】:
-
为什么你认为它在同一个目录中查找?
-
我从未使用过 apache 或 wsgi,我不知道应用程序流程并且对哪些点感到困惑。此应用程序是在 vm 中的 localhost 上运行的服务器上运行的应用程序,但我正在尝试将其切换到 apache 服务器
标签: python ubuntu flask apache2 wsgi