2

我在同一个子域上有两个主干应用程序和一个 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;
}
4

1 回答 1

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;
    }
于 2013-02-13T09:38:40.090 回答