我有一个运行我的网站的Web服务器(带有Apache的Fedora),当前正在尝试创建Flask应用,以接收来自我的app.js文件的AJAX调用,然后最终使用FTP获取远程文本文件的内容以进行输出回到网站。
当我拨打AJAX电话时,遇到路线打我的Flask应用程序时遇到问题。 我相信我知道问题出在哪里,我的AJAX调用没有拨打端口5000,这就是为什么我在控制台中看到404错误的原因。 但是,当我手动执行curl -X GET http://127.0.0.1:5000/index -d'test'我确实看到按预期返回了正确的index.html页面。
因此,我的问题是,通常如何在Apache Web服务器上设置Flask?
这是我对Flask(app.py)的AJAX调用。
app.js:
$(function(){ // this call is returning 404 not found.
$('button').click(function(){
$.ajax({
url: '/index',
data: user,
type: 'POST',
success: function(response){
console.log("Here is the success res: " + response + user);
},
error: function(error){
console.log("Here is the error res: " + error + user);
}
});
});
});
这是我的Flask函数路由我的调用的地方。
app.py:
from flask import Flask, request, send_file, render_template, json
from ftplib import FTP
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'hello world!'
@app.route('/index', methods=['GET', 'POST'])
def index():
return render_template('index.html')
if __name__ == "__main__":
app.run()
所有侦听端口80的进程:
# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
/opt/lamp 3179 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 6833 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 7665 root 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 7909 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 7919 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 10892 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 11676 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 11843 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 12345 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 12755 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)
/opt/lamp 20204 daemon 4u IPv6 2190211 0t0 TCP *:http (LISTEN)