2017-11-23 11 views
0

上で終わるすべてのルートをリダイレクトし、fonyプロジェクトは、私たちは私たちが次のルートがあるとしましょう。 http//example.com/my-method/http//example.com/my-methodにリダイレクトします。symfonyの私の交響曲オーバーURL

私はルート上の最初のパラメータとしてregexを使うことができるか、またはリダイレクトを実行するためにSymfonyのルーティングシステムのshowhowを設定できるかどうかを考えていました。

しかし、symfonyは正規表現を受け入れるか、あるいは何らかの形で、それが埋め込まれるurlの任意の部分を受け入れることができますか?例えば、'/my-method2/?'を使用して、ルートが/で終わっている可能性があることを伝え、そのものを無視するだけです。

+1

あなたは、いくつかの設定をしても、Webサーバー・レベルでこれを行うことができます。あなたは、symfonyのすべてを必要としません。 – DonCallisto

答えて

0

末尾のスラッシュで終わるすべてのURLを同じURLにリダイレクトしたいのですか?

*/$と一致するルートを作成する必要があります。コントローラでは、この "/"を削除します。

そして、symfonyのドキュメント上のコードを与える記事があります: https://symfony.com/doc/current/routing/redirect_trailing_slash.html

+0

何らかの理由で、リダイレクトURLにスラッシュを2つ追加します。 –

+0

あなたはすべてのルート定義の最後にルートを入れましたか? $ url = str_replace($ pathInfo、rtrim($ pathInfo、 '/')、$ requestUri);後続のスラッシュを削除し、URL内のこの部分を置き換えます。最後に2つの "/"があるように変わっているようです。 – Bacteries

関連する問題