After moving my blog to its new domain try-catch-finally.net there was one major issue open: Search engines. Google, Bing, DucDuckGo and whatever have their indices. Eventually, I want to make sure when you hit one of the search results, you will end up with the proper site.
Using NGINX allows you to do this with a few files. Using the location
section let you match against path segments and applying a rewrite rule.
The trick is done by the two parameters $1
and $1
. While the $1
is the content in the first paratheses, $2
is the rest of the path segment from your request which is in the second paratheses. Once I got this pattern, It was easy to write the below rule.
server {
...
location location ~ /(2004|2005|2006|2007|2008|2009|2010|2011|2012|2013|2014|2018|2019|feed|comments|tag|author|category)/(.*) {
return 301 https://www.hack-the-planet.net/$1/$2
;
}
...
}
In addition to just forwarding your request, the client will receive the HTTP status code 301, that way there is a good chance search engines get the information about the change for this particular URL.