2014-09-23 2 views
1

Я пытаюсь создать прокси-сервер для подключения article. В моем коде почти все одинаково, но мне нужно вызвать что-то через протокол https.Grunt connect proxy rewrite не работает в 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. Но замены так и не произошло.

Заранее благодарим за помощь!

+1

есть ли ошибка? Вы используете самоподписанный SSL-сертификат? – mike

+0

Нет ошибки, только простой вызов неправильного URL. Я не использую самоподписанный сертификат. – kree

+0

Я не на 100% позитивен, но я считаю, что вам нужен самоподписанный сертификат, когда вы пытаетесь использовать https на localhost ... где он не работает? – mike

ответ

2

Я сделал глупую ошибку: есть только ошибка с именами!

Для изображений имеется список прокси-сервера и /productImages. Я использую regex для установки этих имен. И "^/product" также заменит /productImages. (Я положил foo только для проверки перезаписи)