我正在Angularjs建立一种电子商务。
所有商店均由唯一字符串(Mystore,Store2等)引用,要查看其产品,您必须转到: example.com/#/ Mystore /products或products或example.com/#/ Store2 /products
我现在想做的是设置Nginx重写,以便 Mystore 可以通过
访问mystore.example.com/products
而不是
example.com/#/mystore/products
Slack为他的客户做得如何
这可能吗?
我尝试了此配置
server {
listen 80;
server_name ~^(.*?).example.com;
location / {
resolver 8.8.8.8;
proxy_pass http://example.com/#/$1;
}
}
现在的问题是,这也适用于脚本文件,因此
mystore.example.com/scripts/main.js
现在指向
example.com/#/scripts/main.js
当然找不到,该应用程序不起作用。有没有一种方法可以仅用于Angular Param而不是其他所有内容?
添加其他嵌套路由以过滤此类情况
server {
listen 80;
server_name ~^(.*?).example.com;
location / {
resolver 8.8.8.8;
proxy_pass http://example.com/#/$1;
location ~* ^/(scripts|static|images) {
proxy_pass http://example.com/;
}
}
}