symfony で link_to() 使ってて、突然リンク先が 404 NotFound になることがあってアセった。 GET のクエリパラメタがあるんだけど、そこを ?arg=val 形式にすると大丈夫。パス形式(/区切り)のままでも値を変更すると大丈夫。 んん?と思って、いろいろ値を試してみると、どうやらURLに「.(ピリオド)」が含まれていると 404 NotFound になっちゃうみたい。 symfony のデフォルトのリライトルールである以下が悪さをしてる模様。 # we skip all files with .something RewriteCond %{REQUEST_URI} \..+$ RewriteCond %{REQUEST_URI} !\.html$ RewriteRule .* - [L] 本来はここのルールで対処すべきなんだろうけど、影響範囲をいろいろと探