gpt4 book ai didi

python - Elastic Beanstalk 不适用于 SQLite

转载 作者:行者123 更新时间:2023-12-01 09:31:17 24 4
gpt4 key购买 nike

我想使用 Flask 框架在 Amazon EB 上放置一个非常简单的网站。该网站有一个欢迎表单,它从用户那里获取两个值,读取 SQLite 数据库并在屏幕上显示结果。该网站在我的本地计算机上完美运行。问题出在 Elastic Beanstalk 上。

我使用 application.py、SQLite 数据库、静态文件夹(用于 Bootstrap )和模板文件夹(用于两个模板)创建一个 zip 文件,并将其上传到 Elastic Beanstalk 上。我的系统是windows,运行python 3.6。上传后,EB 给我绿色状态。我点击 EB 上的链接并转到表格。到目前为止一切都运转良好。然后,当我单击表单时,按钮“提交”将我带到结果页面,但我收到:

内部服务器错误服务器遇到内部错误,无法完成您的请求。服务器过载或应用程序出现错误。

我编写了代码来识别 Amazon EB 无法理解的步骤,并且程序似乎在 cur.execute('''SELECT a, b, c, d, e, f... 行失败意味着 Amazon EB 无法看到/理解我的 SQLITE 数据库。

有人可以帮忙吗?

这是我的 Flask 程序 application.py 代码:

import os
import sqlite3
from flask import Flask, request, render_template

application = Flask(__name__)
@application.route('/', methods=['POST', 'GET'])
def index():
if request.method == 'GET':
return render_template('welcome.html')
elif request.method == 'POST':
conn = sqlite3.connect('Sky.db')
cur = conn.cursor()
weekendid= request.form['weekend']

myData=[]
cur.execute('''SELECT a, b, c, d, e, f, g
FROM Table1 WHERE a = ? ORDER BY g DESC LIMIT 5''', (weekendid,))
row = cur.fetchall()
for i in row:
average_1 = (i[1]+i[3])/2
average_2 = (i[2]+i[4])/2
variable1 = i[5]
variable2 = i[6]
cur.execute('''SELECT * FROM Table2 WHERE a = ?''', (i[0],))
coords=cur.fetchone()
zz = [average_1, average_2,variable1,variable2]

myData.append(zz)

return render_template('where.html', myData=myData)

if __name__ == '__main__':
application.debug = True
host = os.environ.get('IP', '127.0.0.1')
port = int(os.environ.get('PORT', 80))
application.run(host=host, port=port)

最佳答案

首先。在 Elastic Beanstalk 上使用 SQLite 时要小心,因为如果您更改配置,它可能会终止您的实例并重新部署。就您而言,看起来您实际上并未写入数据库,因此这不是问题。

查找错误的第一步可能是转到 Elastic Beanstalk 控制台并单击请求日志。它位于日志 Pane 下方。 enter image description here

在那里,您应该能够从实例获取日志并在 /var/log/httpd/error_log 下找到实际错误。

您可能还想通过 ssh 连接到您的实例并验证路径是否符合您的预期。您当然也可以通过这种方式找到日志。如果您使用 eb 控制台工具,则只需执行 eb ssh

关于python - Elastic Beanstalk 不适用于 SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49954268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com