1

以前のサイトからのこの古いURLを持っています

http://site.com/fixed-word/changing-category/12345-title-of-story

ここで、「変数」は

カテゴリの変更:スポーツ、政治などの例。

12345-タイトルオブストーリー:12345は古いIDで、残りはストーリースラッグ/タイトルです

新しいサイトでは、この形式のストーリースラッグのみを使用しています

http://site.com/another-fixed-word/title-of-story

これを達成するためにnginxで301書き換えルールを作成することは可能ですか?

私はこれを試しました:

^ / fixed-word /([^ \?] +)$ /([^ \?] +)$ /index.php?tipo=old_article&slug=$1 last;

そして、そのアイデアはphpでスラッグを取得し、スラッグ(12345-)から数値IDを削除することでしたが、機能せず、エージングは​​404を返します

何かアドバイス ?

ありがとう

4

1 に答える 1

0

この正規表現は完全に間違っています。 ^/fixed-word/([^\?]+)$/([^\?]+)$

301リダイレクトを作成する必要がある場合は、次を使用する必要があります。

location /fixed-word/ {
    rewrite ^/fixed-word/(?:[^/]+)/(?:\d+)-(.+)$ /another-fixed-word/$1 permanent;
}
于 2012-07-11T15:30:33.657 に答える