使用Flask微框架将旧URL重定向到新URL

Jon*_*Cox 6 python url-routing werkzeug flask

我正在创建一个新的网站来替换当前的网站,使用Flask微框架(基于Werkzeug),它使用Python(在我的情况下为2.6).

核心功能和许多页面是相同的.但是,通过使用Flask,许多以前的URL与旧的URL不同.

我需要一种方法以某种方式存储每个旧URL和新URL,这样,如果用户键入旧URL,他们只需转发到新URL,一切正常.



有人知道Flask中是否可以这样做吗?

预先感谢您的帮助 :-)

Rad*_*ski 17

这样的事情应该让你开始:

from flask import Flask, redirect, request

app = Flask(__name__)

redirect_urls = {
    'http://example.com/old/': 'http://example.com/new/',
    ...
}

def redirect_url():
    return redirect(redirect_urls[request.url], 301)

for url in redirect_urls:
    app.add_url_rule(url, url, redirect_url)
Run Code Online (Sandbox Code Playgroud)