我是不熟悉Flask并尝试部署我的Web应用程序的人。我在“ /登录”页面上收到500内部服务器错误。我不知道我的代码有什么问题。该应用程序可以在本地主机上正常运行。但是当我在pythonanywhere上部署它时,它会抛出错误。
(我在sqlalchemy和sqlite中使用了,这是'/ login'和'/'路由代码段)
@app.route('/')
def home():
if not session.get('logged_in'):
return render_template('homepage.html')
else:
return render_template('quiz.html')
@app.route('/login', methods=['POST'])
def do_admin_login():
Session = sessionmaker(bind = engine)
s = Session()
global USERN
global PASSWD
POST_USERNAME = str(request.form['username']).lower()
USERN = POST_USERNAME
POST_PASSWORD = str(request.form['password'])
PASSWD = POST_PASSWORD
query = s.query(User).filter(User.username.in_([POST_USERNAME]),User.password.in_([POST_PASSWORD]))
result = query.first()
if result:
session['logged_in'] = True
else:
return 'wrong credentials'
return home()
答案 0 :(得分:1)
我不知道您是否以错误的方式复制了代码,但是您需要更改下面的代码行
@app.route('/')
def home():
if not session.get('logged_in'):
return render_template('homepage.html')
else:
return render_template('quiz.html')
对此
@app.route('/')
def home():
if not session.get('logged_in'):
return render_template('homepage.html')
else:
return render_template('quiz.html')
因为这也可能导致错误,并且您也可以在pythonanywhere上的应用程序配置中设置debug=True
来查看到底是什么导致了错误