【发布时间】:2022-10-24 17:36:14
【问题描述】:
我正在使用这个tutorial
背景:我正在使用flask post api激活selenium以提取信息并发送到网站。当我不应用 nginx 配置并仅在服务器上运行以下代码(如在本地计算机中使用端口 5000)时,它运行良好,但是当我使用 tutorial 部署它时,每当我发布时,我都会收到内部服务器错误请求 http://my_domain/find_data
from app import app
if __name__ == "__main__":
app.run()
应用代码在这里
from flask import Flask, send_from_directory, stream_with_context, request, Response
from flask_restful import Api, Resource, reqparse
from flask_cors import CORS #comment this on deployment
from data_finder import DataFinder
from time import sleep
from contextlib import closing
import requests
import json
from flask import jsonify
from flask import jsonify, make_response
app = Flask(__name__, static_url_path='', static_folder='frontend/build')
CORS(app) #comment this on deployment
api = Api(app)
@app.route("/")
def hello():
return send_from_directory(app.static_folder, 'index.html')
@app.route("/find_data", methods = ['POST'])
def FindData():
person = request.get_json()['person']
print(person)
results = {}
data_finder = DataFinder()
results['Spokeo'] = list(data_finder.get_spokeo_data(person))
results['White Pages'] = list(data_finder.get_whitepages_data(person).keys())
return make_response(jsonify(results), 200)
我的项目ini文件是这样的:
[uwsgi]
module = wsgi:app
master = true
processes = 5
socket = myproject.sock
chmod-socket = 660
vacuum = true
die-on-term = true
最后我的 nginx.config 文件是
server {
listen 80;
server_name my_domain www.my_domain;
location / {
include uwsgi_params;
uwsgi_pass unix:/home/help/data-finder/privaseame_web_app/myproject.sock;
uwsgi_read_timeout 900;
proxy_read_timeout 1800;
proxy_connect_timeout 1800;
proxy_send_timeout 1800;
send_timeout 1800;
}
client_header_timeout 900s;
client_body_timeout 900s;
keepalive_timeout 900s;
send_timeout 900s;
}
我正在使用数字海洋 linux droplet Ubuntu 18-0.4 LTS 运行python3.10.6 我在下面使用了堆栈溢出链接,但有关它们的信息还不够
如果我错过任何信息,请告诉我我会提供。
感谢您的洞察力
【问题讨论】:
标签: python linux nginx flask uwsgi