当我尝试从我的数字海洋帐户中运行我的代码时,我遇到了“内部服务器错误”。我尝试在本地运行代码,它运行良好,当我在 www.pythonanywhere.com 上尝试它时,它也运行良好,没有任何错误。
import os
from flask import Flask, render_template, request
app = Flask(__name__)
APP_ROOT = os.path.dirname(os.path.abspath(__file__))
@app.route("/")
def index():
return render_template("upload.html")
@app.route("/upload", methods = ['POST'])
def upload():
target = os.path.join(APP_ROOT, 'images/')
print(target)
if not os.path.isdir(target):
os.mkdir(target)
for file in request.files.getlist("file"):
print(file)
filename = file.filename
destination = "/".join([target, filename])
print(destination)
file.save(destination)
return render_template("complete.html")
if __name__ == "__main__":
app.run()
此代码创建文件夹并将文件完美地上传到本地和 python 任何地方,但我无法弄清楚为什么它不会为我的数字海洋 VPS 这样做。
我用于“upload.html”的html代码是:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Upload</title>
</head>
<body>
<h1> File Uploader </h1>
<form id-"upload-form" action="{{ url_for('upload') }}" method="POST" enctype="multipart/form-data">
<input type="file" name="file" accept="image/*" multiple>
<input type="submit" value="send">
</form>
</body>
</html>
我的“complete.html”基本上只是一个段落标签,上面写着“它有效”,所以我知道它没有遇到错误..
有没有其他人遇到过类似的问题?