我正在尝试部署我的flask应用程序,以便它可以在LAN中的任何计算机上使用。但是,当我执行它时,我在apache2 error.log文件中得到以下错误:
这是针对__init__.py
(python3)的:
from flask import Flask, redirect, url_for, render_template,request
app = Flask('__name__')
@app.route("/", methods=["POST", "GET"])
def home():
if request.method == "POST":
return render_template("index.html")
else:
return render_template("index2.html")
if __name__ == "__main__":
app.run()
我的代码index.html是:
<!DOCTYPE html>
<html>
<head></head>
<body>
<h1>Home Page</h1>
<form action="#" method="post">
<input type="submit" name="submit">
</form>
</body>
</html>
对于index2.html,它与index.html的代码相同,只是标签h1的内容不同。
当我在本地(http://127.0.0.1:5000/)执行此操作时,它工作正常。
我正在关注本教程:https://www.youtube.com/watch?v=YFBRVJPhDGY
对我可能做错的事情有任何想法吗?
答案 0 :(得分:2)
代替
app = Flask('__name__')
做
app = Flask(__name__)
Flask使用程序包/模块名称来定位模板文件夹。
答案 1 :(得分:0)
仔细检查服务器上的部署结构。您的模板文件夹可能位于错误的位置。就像您在本地进行结构化一样,templates文件夹应位于项目根文件夹下。