nginx sends 301 redirect for alias in location
Maxim Dounin
mdounin at mdounin.ru
Wed Sep 5 12:25:37 UTC 2018
Hello!
On Wed, Sep 05, 2018 at 09:58:54AM +0300, Peter Volkov wrote:
> Hi. Could you, please, explain. Why nginx sends 301 redirect for the
> following vhost:
>
> server {
> listen 80;
> server_name test.domain.tv <http://test.m9.smotreshka.tv>;
>
> access_log off;
>
> location = /test/README.txt {
> alias /var/www/;
> }
> }
>
> Here is redirect:
>
> $ http http://test.domain.tv/test/README.txt
> HTTP/1.1 301 Moved Permanently
> Connection: keep-alive
> Content-Length: 178
> Content-Type: text/html
> Date: Wed, 05 Sep 2018 06:55:27 GMT
> Keep-Alive: timeout=20
> Location: http://test.domain.tv/test/README.txt/
> Server: nginx
>
> <html>
> <head><title>301 Moved Permanently</title></head>
> <body bgcolor="white">
> <center><h1>301 Moved Permanently</h1></center>
> <hr><center>nginx</center>
> </body>
> </html>
You've aliased "/test/README.txt" into a directory "/var/www/".
Since the URI "/test/README.txt" does not have a trailing slash,
nginx returns a redirect with a trailing slash added, much like it
does when requesting a directory without a trailing shash.
--
Maxim Dounin
http://mdounin.ru/
More information about the nginx
mailing list