0

URLの書き換えに問題があります。PERMANENT は正常に動作します。しかし、LASTに変更すると機能しません。phpinfo は古い値を表示します。

http://site.com/?parent_id=10 -> http://site.com/parent/10

if ($args ~ "parent_id=(.*)") {
  set $parent $1;
  set $args '';
  rewrite ^/$ /parent/$parent permanent;
}

将来の書き換えで /parent/10 が Yii フレームワークの URL ルールに変換されるため、これは内部的なものである必要があります。YiiFramework を使用するように古い Web サイトを書き直し、古い URL をそのまま残したいと考えています。

ありがとう、アレックス

4

1 に答える 1

1

IF IS EVILの使用。いくつかの URL の書き換えが添付されています。なども外してset紐不要!

http://site.com/notes/343
http://site.com/note.php?id=343

rewrite ^/notes/(.*)$ /notes.php?id=$1 last;

http://site.com/users/BlackBenzKid
http://site.com/user.php?id=1

rewrite ^/users/(.*)$ /user.php?username=$1 last;

http://site.com/top
http://site.com/top.php

rewrite ^/top?$ /top.php last;

Complex and further

http://site.com/users/BlackBenzKid/gallery
http://site.com/user.php?username=1&page=gallery

rewrite ^/users/(.*)$/gallery /user.php?username=$1&page=gallery last;

あなたの質問に答えるために。次のようなものが必要です。

rewrite ^/parent/(.*)$ /parent.php?id=$1 permanent;
于 2013-05-03T15:10:13.350 に答える