2

最近、Google App Engine で実行している Web アプリケーションのドメイン名を変更しました。古い Web サイトから新しいドメインにページをリダイレクトする簡単な方法があるかどうか疑問に思っています。コードに関してはすべてまったく同じままですが、新しいドメインに移動したいだけです。

Web アプリケーションに python と webapp2 フレームワークを使用しています。

私は通過できることを知っており、すべての単一ハンドラーに対して次のことを行います。

webapp2.redirect('the specific url', permanent=True)

しかし、私はよりエレガントなソリューションを望んでいます。

4

1 に答える 1

4

グローバル URL の書き換えを行うだけです。基本的に、Web アプリケーションはすでに要求された URL と一致しており、webapp2.WSGIApplicationそれをオブジェクト内の適切なコードに誘導しているため、すべての URL を同じ に一致させclass、おそらく('/*', myclass)またはそのようなものに一致させ、そのページでユーザーを対応するものにリダイレクトさせることができます。新しいサイトのページ。例:

import webapp2
newdomain = 'http://www.mynewdomain.com/'

class RedirectPage(webapp2.RequestHandler):
    def get(self, restofurl):
        return webapp2.redirect(newdomain + restofurl, permanent=True)

app = webapp2.WSGIApplication([webapp2.Route(r'/<restofurl:.*>', handler=RedirectPage, name='redirect_page')])

残念ながら、これが機能することを 100% 確実にテストすることはできませんが、少なくとも理論上は機能することはわかっています。理想的には、Apache URL の書き換えを希望しますが、その選択肢はないと思います。

于 2012-12-06T18:53:29.620 に答える