How to redirect single URL in Nginx? How to redirect single URL in Nginx? nginx nginx

How to redirect single URL in Nginx?


location ~ /issue([0-9]+) {    return 301 http://example.com/shop/issues/custom_isse_name$1;}


Put this in your server directive:

location /issue {   rewrite ^/issue(.*) http://$server_name/shop/issues/custom_issue_name$1 permanent; }

Or duplicate it:

location /issue1 {   rewrite ^/.* http://$server_name/shop/issues/custom_issue_name1 permanent;}location /issue2 {   rewrite ^.* http://$server_name/shop/issues/custom_issue_name2 permanent;} ...


If you need to duplicate more than a few redirects, you might consider using a map:

# map is outside of server blockmap $uri $redirect_uri {    ~^/issue1/?$    http://example.com/shop/issues/custom_isse_name1;    ~^/issue2/?$    http://example.com/shop/issues/custom_isse_name2;    ~^/issue3/?$    http://example.com/shop/issues/custom_isse_name3;    # ... or put these in an included file}location / {    try_files $uri $uri/ @redirect-map;}location @redirect-map {    if ($redirect_uri) {  # redirect if the variable is defined        return 301 $redirect_uri;    }}