使用nginx重定向(从url中删除子字符串)

时间:2016-07-03 15:59:21

标签: redirect nginx url-rewriting url-redirection ngx-http-rewrite-module

我想从旧网址重定向:

http://example.org/xxxxxxxxx.html

到新网址(删除" .html")

http://example.org/xxxxxxxxx

我如何用nginx做到这一点?

修改

xxxxxxxxx可以有所不同,例如:

http://example.org/url-1.html重定向到http://example.org/url-1 http://example.org/another-url.html重定向to http://example.org/another-url

3 个答案:

答案 0 :(得分:4)

location ~ ^(.*)\.html$ {
    return 301 $1;
}

答案 1 :(得分:1)

可能你需要重写声明

location /xxx.html {
   rewrite ^/xxx(.*) http://example.org/xxxxx permanent;
 }

您的详细说明请参阅https://www.nginx.com/blog/creating-nginx-rewrite-rules/

另一种方法是return directive

server {
    listen 80;
    listen 443 ssl;
    server_name www.old-name.com old-name.com;
    return 301 $scheme://www.new-name.com;
}

答案 2 :(得分:0)

Range<Int>