0

私はちょうど私のnginxの構文が正しくないことがわかった:nginxの301リダイレクト構文エラー

location /news { rewrite ^(.*)$ /blog redirect;} 

私はmysite.com/blogするmysite.com/newsをリダイレクトしたいが、そのコードをブログに多くのページをリダイレクトしました。

誰でもエラーを説明し、正しくリダイレ​​クトする方法を教えていただけますか?

ありがとうございました

答えて

1

のベストプラクティスは、まだlocationを使用することです。あなたは/blogにリダイレクトする/news以下のもの(ワイルドカード用など、必要はありません)をしたくない場合は、次はあなたが望むもので、おそらく単一のエイリアスを作成するための最も効率的な方法である:

location = /news { 
    return 301 /blog; 
} 

それ以外の場合は、実際にはワイルドカードが必要です。

location /news { 
    rewrite ^/news(.*) /blog$1 permanent; 
} 

PS redirect would cause 302 redirects; if you want 301, then the keyword is called permanentにも注意してください。

0

ロケーションブロック内に配置する必要はありません。ただ1回の書き換えルールで十分です。

rewrite ^/news/?$ /blog redirect;

関連する問題