:Düğüm Vekil - Vekil temel bir http sunucusundan bir SSL localhost hedef
proxy sırayla SSL olmayan http://127.0.0.1:1337/ üzerinde çalışan kenarı boyunca https://127.0.0.1:443/api/
benim UI çalışan bir java api bazı CORS sorunlarının etrafından dolaşmak.
girişimim:
- Vekil 1338.
- vekil benim SSL olmayan gelişme portuna SSL portu 443 olarak API
:8080/index.html
ve proxy 1337 - benim UI Vekil 1137 8080
:8080/api/
için Benim sorun:
UI sadece iyi geliyor ... ama :8080/api/httpSession/init
de API vuramaz Evet, hala https://localhost/api/httpSession/init
api.js de API vurabilir - Vekil 133 1337
var app = express();
app.all('*', function (req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
});
var options = {
changeOrigin: true,
target: {
https: true
}
};
httpProxy.createServer(443, '127.0.0.1', options).listen(1338);
start.js: - de index.html oluşturur 7 ve 1338 vekil sorunu için
// First I start my two servers
uiServer.start(); // renders index.html at 1337
apiServer.start(); //
// I attempt to patch them back into one single non-SSL port.
app
.use('/', proxy({target: 'http://localhost:1337/'}))
.all('/api/*', proxy({target: 'http://localhost:1338/'}))
.listen(8080, function() {
console.log('PROXY SERVER listening at http://localhost:%s', 8080);
});
Nginx'i ihtiyacınız olanı elde etmek için bir ters proxy olarak kullanmanızı öneririm. [Here] (https://www.garron.me/en/linux/nginx-reverse-proxy.html), ihtiyacınız olan şeylere benzer bir şey elde etmek için bazı talimatlardır. [Bu] (http://serverfault.com/questions/706694/use-nginx-as-reverse-proxy-for-multiple-servers) ayrıca yardımcı olmalısınız ... – mkhanoyan
Api'nizi iki kez proxy yapan bir sebep var mı ? Önce 1338 numaralı bağlantı noktasına, daha sonra 8080 numaralı bağlantı noktasına/api /? –
Bunun konu dışı olduğunu biliyorum, ancak aynı bağlantı noktasında bunu gerçekleştirmek için ters proxy ile bir web sunucusu da kullanabilirsiniz. Örneğin, bir sanal sunucuda ters proxy uç noktalarını ayırmak için IIS veya Nginx'i kullanabilirsiniz. –