NGINX - Return 301 vs Rewrite

I use NGINX in my dedicated server.

I've a question about the return and rewrite 301.


Rewrite 301:

rewrite ^ http://xxx.xxxxx.net/xx-xxx/$request_uri? permanent;

Return 301:

location ~ redirect-this/?$ {
    return 301 http://xxx.xxxxx.net/xx-xxx/redirect-this$1;
}

All redirects work correctly. But..

Which is the most effective method to make a 301 redirect?

I've more than 200 url to redirect. So, what you recommend?


Solution 1:

As stated in the nginx pitfalls you should use server blocks and return statements as they're way faster than evaluating RegEx via location blocks.

Since you're forcing the rewrite rule to send a 301 there's no difference when it comes to SEO, btw..