gpt4 book ai didi

Python+Flask+Cgi+Apache 重写?

转载 作者:行者123 更新时间:2023-12-01 05:28:27 25 4
gpt4 key购买 nike

我遇到类似于 this question 的问题- 我仅限于使用 1and1 托管,通过 virtualenv 运行 cgi。

我的 .htaccess 文件中有以下内容:

Options +ExecCGI

DirectoryIndex index.cgi

RewriteEngine On
RewriteRule ^/mypath/test/index.cgi/(.*)$ - [S=1]
RewriteRule ^/mypath/test/(.*)$ /mypath/test/index.cgi/$1 [QSA,L]

我的index.cgi包含

#!/path/to/myenv/bin/python

from wsgiref.handlers import CGIHandler
from flask import Flask

app = Flask(__name__)

@app.route("/", defaults={"path":''})
@app.route("/<path:path>")
def main(path):
return "oh hai, mr. %s" % path


@app.route("/fnord")
def fnord():
return "allo"

CGIHandler().run(app)

我希望能够访问 www.mysite.com/mypath/test/page-onewww.mysite.com/mypath/test/page -两个。但现在我能做的就是转到 index.cgiindex.cgi/fnord。我还可以转到 /test/。我需要做什么来解决这个问题?

最佳答案

尝试删除规则模式中的前导斜杠:

RewriteRule ^mypath/test/index.cgi/(.*)$ - [S=1]
RewriteRule ^mypath/test/(.*)$ /mypath/test/index.cgi/$1 [QSA,L]

在 htaccess 文件中应用规则时,URI 的前导斜杠被删除。

您还可以将 [S=1] 替换为简单的 [L]

关于Python+Flask+Cgi+Apache 重写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20852685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com