2014-05-25 35 views
9

Pracuję nad skonfigurowaniem mojej aplikacji do oglądania wydarzeń w kalendarzu za pośrednictwem interfejsu API Kalendarza Google. W tym celu muszę ustawić punkt końcowy "Push" na moim serwerze, który ma ważny certyfikat SSL (nie samopodpisany).Używanie certyfikatu SSL dla środowiska dewelopera ngrok

Moje środowisko produkcyjne działa na Heroku, więc skonfigurowanie certyfikatu SSL było łatwe przy użyciu Expidited SSL. Mam dwie instalacje CNames w GoDaddy, jedną dla mojej aplikacji produkcyjnej i jedną dla mojego środowiska programistycznego tunelowaną przez ngrok. Korzystam z płatnej funkcji ngrok w tunelowaniu domeny w domenie białej (dev.mydomain.com).

Host   Points To 

www   saga-1234.herokussl.com 
dev   ngrok.com 

Problemem jest to, że mój certyfikat ssl jest rozpoznawana po trafieniu aplikację produkcyjną (www.mydomain.com), ale używa certyfikatu ngrok kiedy odwiedzić Application Development (dev.mydomain.com).

enter image description here

Jak mogę skonfigurować mój ngrok tunel do korzystania z mojego certyfikatu SSL?

+1

Przyjrzeliśmy się tworząc wieloznaczny cert SSL, ale nie jestem pewien, czy to pokryje moje dev subdomenę lub tylko subdomeny na Heroku –

+0

prostu ciekawi, nie powinno wpis w 'CNAME' być coś podobnego 'dev mydev_mydomain.ngrok.com'? –

+0

Tunele w niestandardowych domenach (białe etykiety URL) to płatna funkcja ngrok. –

Odpowiedz

5

Biała domena Ngrok nie obsługuje HTTPS, jeśli używasz własnej domeny. Po prostu dlatego, że obsługuje swój własny certyfikat, w którym musisz obsługiwać domenę. Właśnie dlatego masz problem z niedopasowaniem certyfikatu.

Oto co można zrobić, aby oglądać wydarzenia w kalendarzu na komputerze dev:

  1. Punktu ngrok.mydomain.com na inny serwer, powiedzmy nowej instancji EC2 mikro
  2. punktu wieloznaczny CNAME do ngrok .mojadomena.com
  3. skompilować ngrok serwer i klienta do korzystania z certyfikatu (zamiast ngrok.com)
  4. Uruchom ngroku-serwer, na przykład EC2
  5. Na komputerze dev config klienta do korzystania ngrok.mydomain.com zamiast ngroku.com
  6. Run ngrok -subdomain = dev 80

portem lokalnym komputerze dev za 80 powinny być dostępne za pośrednictwem https://dev.mydomain.com

To jest naprawdę fajne i jest bardzo przydatne podczas debugowania internetowych haseł Google, które wymagają poprawnego HTTPS i zweryfikowanej nazwy domeny root.

Inną interesującą sztuczką jest użycie uniwersalnego SSL CloudFlare, aby ważny https://dev-machine.mydomain.com wskazywał na maszynę dev bez zakupu certyfikatu. Kroki są dokładnie takie same, z wyjątkiem tego, że musisz wydać własny certyfikat dla komunikacji klient-serwer ngrok i użyć Flex SSL CloudFlare dla dev-machine.twojawena.com.

+0

Wow! To świetny krok, dziękuję! Muszę spróbować i sprawdzić ponownie. –