質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Q&A

解決済

1回答

8294閲覧

【nginx】rewrite時のブラウザ表記をrewriteされたままにしたい。

tajix_japan

総合スコア132

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

0グッド

0クリップ

投稿2017/03/19 00:08

編集2017/03/19 05:21

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/
にする方法ばありませんでしょうか?

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ikedas

2017/03/19 02:12

URLを正しく表記してくださいませんか。ここは技術情報を扱うサイトですので、技術的に不正確な表現があれば回答を得られません。
ikedas

2017/03/19 02:40

質問のほうを修正いただければと思います。
guest

回答1

0

ベストアンサー

permanent フラグを付けると Redirect (応答コード 301)になります。
permanent フラグを付けない、かつ、書き換え後が http://, https:// などで始まっていなければ、ブラウザの URL はそのままで、書き換え後のコンテンツが見えると思います。

投稿2017/03/19 07:55

TaichiYanagiya

総合スコア12141

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tajix_japan

2017/03/19 10:10

有難うございます。 修正できました。 深く御礼申し上げます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問