在nginx的子路径中为骨干工作制作pushState

时间:2013-02-12 17:18:45

标签: backbone.js nginx pushstate

我在同一个子域中有两个主干应用程序和一个API但是我无法使pushStates适用于具有正确位置正则表达式的应用程序。

这是我试图完成的路径

subdomain.domain.org/admin subdomain.domain.org/client subdomain.domain.org/api

我曾尝试为客户端和管理员配置重写规则,但它总是因404或500错误而失败。这样做的正确方法是什么?

以下是我尝试过的所有组合的一个例子:

location ~ ^/admin.*$ {
    alias /var/www/project/admin/public
    rewrite ^(.+)$ /index.html last;
}

1 个答案:

答案 0 :(得分:3)

我在阅读https://serverfault.com/questions/361159/nginx-multiple-location-issues#361426后想出来了 结束了这个:

    location ^~ /admin {
            access_log /var/log/nginx/admin.access.log;
            error_log /var/log/nginx/admin.error.log notice;
            alias /var/www/project/admin/public/;
            try_files $uri $uri/ /index.html;
            rewrite ^/admin/(.+/)$ /admin/index.html last;
    }

    location ^~ /client {
            access_log /var/log/nginx/client.access.log;
            error_log /var/log/nginx/client.error.log notice;
            alias /var/www/project/client/public/;
            try_files $uri $uri/ /index.html;
            rewrite ^/client/(.+/)$ /client/index.html last;
    }