Python 2.7 未找到烧瓶路由变量404

Python 2.7 未找到烧瓶路由变量404,python-2.7,.htaccess,asp.net-web-api,flask,cgi,Python 2.7,.htaccess,Asp.net Web Api,Flask,Cgi,我一直试图通过1和1在我的共享主机环境上运行一个简单的web api 我已经设置了这个路径~/myapp/api,我把所有python脚本放在这里。 这是我无法工作的一个(test.py): 问题在于最后一条路线。它只有在创建目录“tables”时才能工作,否则会抛出一个notfound错误 from flask import Flask app = Flask(__name__) @app.route('/myapp/') def api_base(): return "/myapp"

我一直试图通过1和1在我的共享主机环境上运行一个简单的web api

我已经设置了这个路径~/myapp/api,我把所有python脚本放在这里。 这是我无法工作的一个(test.py):

问题在于最后一条路线。它只有在创建目录“tables”时才能工作,否则会抛出一个notfound错误

from flask import Flask
app = Flask(__name__) 

@app.route('/myapp/')
def api_base():
  return "/myapp"

@app.route('/myapp/api/')
def api_base_full():
  return "/myapp/api"

@app.route('/myapp/api/table/', methods = ['GET', 'POST'])
def api_routes_table():
    if request.method == 'GET':
        return getAllTableItems()
    elif request.method == 'POST':
        return insertNewTableItem()
.htaccess位于~目录中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^myapp/(.*)$ /myapp/api/cgitester.py/betabank/$1 [L]
cgiteseter.py:

from wsgiref.handlers import CGIHandler
from test import app

CGIHandler().run(app)
我感觉问题出在我的.htaccess文件上,因为我真的不知道我在那里做什么。通过查看flask文档和stackoverflow帖子,我不知道如何解决这个问题。谢谢你的帮助


我试图做的是创建一个web api,这样当我调用www.example.com/myapp/api/table时,它会返回数据库的json。然后www.example.com/myapp/api/table/3将返回表第3行。现在我只想让它打印一些文本,这样我就知道调用了正确的函数。

事实证明,我的.htaccess文件中有一行来自wordpress,这导致了所有问题

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule . /index.php [L]
</IfModule>

# END WordPress
#开始WordPress
重新启动发动机
重写基/
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
#重写规则/index.php[L]
#结束WordPress
在注释了底部的那一行之后,效果很好

我刚在Oracle网站上找到:

匹配任何地址的规则

特殊模式“.”(单个句点)匹配任何主机/域 如果没有其他规则匹配且主机/域 在通道表中的任何位置都找不到规范。换句话说 在地址重写时,“.”规则是最后的手段 否则就会失败