•
파일 구성
/main.py
from flask import Flask, render_template, request
from werkzeug.utils import secure_filename
app = Flask(__name__)
# 업로드 HTML 렌더링
@app.route('/')
def render_file():
return render_template('upload.html')
# 파일 업로드 처리
@app.route('/fileUpload', methods = ['GET', 'POST'])
def upload_file():
if request.method == 'POST':
f = request.files['file']
# 저장할 경로 + 파일명
f.save('/home/glory-dl/glory/python_web/211202_OK/uploads/'+secure_filename(f.filename))
return 'uploads 디렉토리 -> 파일 업로드 성공!'
if __name__ == "__main__":
app.run(host='0.0.0.0', port=55555, debug=True)
Python
복사
•
주의해야할 점은 파일을 저장하는 경로를 꼭 잘 명시해줘야 한다. (f.save 쪽 라인에 파일 경로를 잘 명시해야함)
/templates/upload.html
<html>
<body>
<form action = "http://111.111.111.111:55555/fileUpload" method = "POST"
enctype = "multipart/form-data">
<input type = "file" name = "file" />
<input type = "submit"/>
</form>
</body>
</html>
HTML
복사
•
여기서 주의해야할 점은 form action 부분에 http:// 이하 IP 번호를 꼭 고려하여 잘 작성해야하는데 외부에 ip주소가 노출되는 만큼 이 부분은 조심해줘야만 한다.
•
실행명령어 : python main.py
•
실행 화면
•
끝