nginx如何配置到html文件的路由?

时间:2015-08-18 14:03:49

标签: nginx

我有nginx配置:

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /var/www/site/public;
    index main.html;

    server_name localhost;

    location / {
        try_files $uri $uri/ =404;
    }

在根目录下我也有html文件:page1.html,page2.html,page3.html。 我想配置路由mysite.com/services/page1到文件page1.html。我该怎么办? 我试过了:

location = /services/page1 { try_files /page1.html;}

但它不起作用。

1 个答案:

答案 0 :(得分:3)

如果您只想在文件不存在的情况下重写网址,您可以在try_files指令中使用命名位置。

location /services {
    try_files $uri $uri/ @service_pages;
}

location @service_pages {
    rewrite ^/services/page([1-3]).html /page$1.html;
}