0

私の Zend Framework 2 アプリケーションには、スポーツ ページへのリンクを含む都市のカタログがあります。

ページ「都市」 ( /catalog)

マドリッドリンク:website.tld/catalog/Madrid

ベルリンのリンク:website.tld/catalog/Berlin

ロンドンリンク:website.tld/catalog/London

ページ「ロンドンのスポーツ」 ( /catalog/London)

フーリンクwebsite.tld/catalog/London/Foo

バー(バー)リンクwebsite.tld/catalog/London/Bar (Bar)

Baz - Bazリンク:website.tld/catalog/London/Baz - Baz

URL はエスケープされており、私の仮想マシン (nginx) ではうまく機能します。ただし、(Apache)サーバーではありません。404 ErrorURL にブラケット (例: Bar (Bar)) またはハイフン (例: )が含まれていると、 が表示されますBaz - Baz

修正方法は?

(ZF2の問題ではないと思いますが、確信が持てないので、この質問にもzend-framework2タグを付けています。)


編集:

バグを見つけました。それはApacheについてではなく、私自身の悪いことです。ZF2 モジュール構成でルートを間違って定義しました。

'regex' => '/catalog/(?<city>[\p{L}\p{Zs}]*)/(?<sport>[\p{L}\p{Zs}]*)'`

このようなものの代わりに

'regex' => '/catalog/(?<city>[\p{L}\p{Zs}]*)/(?<sport>[\p{L}\p{Zs}\p{P}]*)'`

( PCREによる「サポートされている一般的なカテゴリ プロパティ コードのリスト」も参照してください)

4

0 に答える 0