我尝试通过此article创建连接代理。我的代码中几乎所有东西都是一样的,但我需要通过https协议调用一些东西。
connect: {
options: {
port: 9000,
hostname: '0.0.0.0',
livereload: 35729
},
proxies: [{
context: ['/foo/product', '/foo/somethingelse'],
host: 'non-https-domain.com',
changeOrigin: true
rewrite: {
'^/foo': ''
}
},{
context: '/productImages',
host: 'https-domain.com',
https: true,
port: 443, // just trying
changeOrigin: true,
rewrite: {
'^/productImages': ''
}
}],
livereload: {
// the same like the article
}
}
/product
和/somethingelse
运作良好,但/productImages
没有。
我需要这样称呼它:
localhost:9000/productImages/lot/of/directory/and/finally/a/file.jpg
它应该调用
https://https-domain.com/lot/of/directory/and/finally/a/file.jpg
重点是没有/productImages
。但取而代之的从未发生过。
提前感谢您的帮助!
答案 0 :(得分:2)
我犯了一个愚蠢的错误:名字只有错误!
产品列表有/product
代理上下文,图像有/productImages
。我使用正则表达式来设置这些名称。而"^/product"
也会取代/productImages
。 (我只将foo
用于测试重写)