环境
OpenCloudOS 8
Python 3.6.8
Flask 2.0.3
步骤一
运行以下命令安装NGINX并启动。
sudo yum install nginx -y
sudo nginx
运行以下命令安装Flask。
pip3 install flask
步骤二
运行以下命令打开index.html
,此文件即为网站主入口。
vim /usr/share/nginx/html/index.html
将上述文件修改为以下内容(用于测试)。
<html>
<head>
<title>Upload</title>
</head>
<body>
<form action="http://xx.yy.zz.jj:kk/uploader" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit" value="submit" />
</form>
</body>
</html>
注意:此处xx.yy.zz.jj
为服务器的公网IP地址;kk
为端口号,后文有相关解释。
步骤三
运行以下命令新建app.py
。
vim /usr/share/nginx/html/app.py
添加以下内容(用于测试)。
from flask import Flask, render_template, request
from werkzeug.utils import secure_filename
import os
app = Flask(__name__)
@app.route('/uploader', methods=['POST'])
def uploader():
f = request.files['file']
f.save(os.path.join('upload/', secure_filename(f.filename)))
return 'success'
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=kk)
注意:此处host
须为0.0.0.0
,外网才能访问;此处的kk
须同上述index.html
中的kk
一致。
运行以下命令。
mkdir /usr/share/nginx/html/upload
测试
运行以下命令。
python3 /usr/share/nginx/html/app.py
在(另一台电脑的)浏览器中访问服务器IP地址,测试发现可以正常上传文件。
另记(与本文无关)
使用pip安装gevent时,需要先运行如下命令,否则会报错。
python3 -m pip install --upgrade pip