apacheからnginxへの引っ越しをしています。
apache時代には、mod_rewriteを使い、.htaccess に下記のような変換をしていました。
RewriteRule ^city/([0-9A-Za-z]+)/([0-9A-Za-z]+)\/$ city.php?a2_pre_id=$1&a4_city_id=$2 [L]
これにより
http://example.com/city/13/13102/
のリンクを踏むと
http://example.com/city.php?pre_id=13&city_id=13102
のPHPの結果を拾ってきます。
この場合、ホームページに記載するURLは
http://example.com/city/13/13102/
そこを踏んだ場合の、ブラウザに表示されるURLも同様となります。
http://example.com/city/13/13102/
nginxのrewriteを使って同様のことを行いました。
Config Fileへの記載内容は下記としました。
Config
1rewrite ^/city/(.*)/(.*)/$ /city.php?a2_pre_id=$1&a4_city_id=$2 permanent;
これにより
http://example.com/city/13/13102/
のリンクを踏むと
http://example.com/city.php?pre_id=13&city_id=13102
のPHPの結果を拾ってきます。
ホームページに記載するリンクのURLは
http://example.com/city/13/13102/
で変わりはありません。
しかし、そのリンクを踏んだ場合、ブラウザに表示されるURLが、
http://example.com/city.php?pre_id=13&city_id=13102
と、PHPがそのまま表示されてしまうことがわかりました。
これでは、折角のrewriteが台無しです。
【質問】
nginxでのrewrite時のブラウザに表示されるURLを
http://example.com/city/13/13102/
にする方法ばありませんでしょうか?
よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー