我有一个python应用程序,在centos机器上带有枪角兽和烧瓶。我通过以下方式从另一台计算机访问该应用程序:
http://host:port/nameOfFunction?path=https://site/directory1/directory2/directory3/file.pdf
路径是正确的,因为它有效。当我多次输入同一条路径时,有时它有效,有时则无效。
我正在使用枪角兽(使用以下命令(:
gunicorn -b 0.0.0.0:8080 start:app
以启动我的应用程序。当答案返回时,显示 gunicorn 的屏幕会打印一些代码,我放这些代码以查看一些信息。当它返回错误 500 时,根本不打印开始的代码。
我不知道这是什么原因。
代码的开头是:
@app.route("/call", methods=['POST', 'GET'])
def call():
print 'n============================BEGINS======================n'
path =request.args.get('path')
newPath = path.rsplit('/',1)[1]
directoriesRoot(root)
directoriesRoot(pdfs)
parameters = ["curl", path.replace(' ','%20'), '--output',pdfs+newPath]
p = subprocess.Popen(parameters, stdout=subprocess.PIPE)
output, err = p.communicate()
if err:
return 'ERROR'
person= functionSecundaryWithNoImportance([newPath])
return jsonify(person)
有人有一些线索或已经通过了类似的问题?
在user3788685的帮助下,我发现我的python应用程序在端口8080上(可能是apache的默认端口之一是8080(,所以它冲突。有时它指向python,有时指向apache。所以我将我的 python 应用程序的端口更改为 1234:
gunicorn -b 0.0.0.0:1234 start:app
现在作为一个魅力!