Nginx – Meaning of the ~ (tilde) in the location block of the nginx.conf

nginxrewrite

What is the meaning of the tilde after the location block in the nginx configuration?

for example

location ~ ^/download/(.*)$ {
  alias /home/website/files/$1;
}

What is the difference between with and without the "~" ?

Best Answer

The tilde instructs nginx to perform a case-sensitive regular expression match, instead of a straight string comparison.

More details in the docs.