http://www.myweb.com/like/1234456 に入力してもらいたい http://www.myweb.com/item.php?itemid=1234456
私は設定でこのようなものを書いたが、それは動作しません。
location = ^~/like/ {
rewrite ^1234456 ../likeitem.php?item=1234456break;
return 403;
}
これは単なるテストです。まだ$マッチングを使用していません。
Ngnixサーバーも再起動しますが、それでもリダイレクトは行われません。
上記のコードは、$が欠落しており、returnコマンドの使用が不十分なため機能しません。
以下のコードは、バージョン0.8.54を含むNginxで動作します。
以下の形式は次のとおりです。
それらはlocation / {}
内になければなりません
http://example.com/notes/343
http://example.com/notes.php?id=343
rewrite ^/notes/(.*)$ /notes.php?id=$1 last;
http://example.com/users/BlackBenzKid
http://example.com/user.php?username=BlackBenzKid
rewrite ^/users/(.*)$ /user.php?username=$1 last;
http://example.com/top
http://example.com/top.php
rewrite ^/top?$ /top.php last;
複雑でさらに
http://example.com/users/BlackBenzKid/gallery
http://example.com/user.php?username=BlackBenzKid&page=gallery
rewrite ^/users/(.*)/gallery$ /user.php?username=$1&page=gallery last;
これを試して、
server {
server_name www.myweb.com;
rewrite ^/like/(.*) http://www.myweb.com/item.php?itemid=$1 permanent;
}