




Farklı Portta API Çalıştırma Problemi - Genel Problem
-
Merhaba Mürit ve Mürideler,
Bir proje geliştirdik ve bu projede 3 farklı bölüm var. 1. Bölüm frontend React.JS, 2. Bölüm backend .NET, 3. Bölüm Web Socket NodeJS Socket.io.
Frontend 80 ve 443 portunda çalışıyor fakat api 1001, web socket 1002 portunda çalışıyor. Sisteme giriş yapan müşteriler kurumsal müşteriler. Haliyle bu müşterilerimizin firmaları da bu portlara izin vermediğinden api ve socket çalışmıyor onlarda.
Bunun için her projeye sub domain oluşturmak ve ona ssl satın almak maliyet gerektiren bir iş. farklı farklı ortamlarda çalıştırıyorum projeyi.
UAT, Dev, PROD, Live diye 4 farklı ortam var yani 4x3 den 12 tane farklı subdomain almamız ve buna ssl satın almamız gerekiyor. Subdomain olmadan bu işi nasıl çözebilirim fikir verebilecek var mı ?
Kaldı ki subdomain alsam bile nodejs express.js çalışıyor orada 80 ve 443 portu dolu olduğundan onu nasıl çalıştırıcam :/
MhmdAlmz tarafından 07/Haz/22 13:12 tarihinde düzenlenmiştir -
MhmdAlmz bunu yazdı
Merhaba Mürit ve Mürideler,
Bir proje geliştirdik ve bu projede 3 farklı bölüm var. 1. Bölüm frontend React.JS, 2. Bölüm backend .NET, 3. Bölüm Web Socket NodeJS Socket.io.
Frontend 80 ve 443 portunda çalışıyor fakat api 1001, web socket 1002 portunda çalışıyor. Sisteme giriş yapan müşteriler kurumsal müşteriler. Haliyle bu müşterilerimizin firmaları da bu portlara izin vermediğinden api ve socket çalışmıyor onlarda.
Bunun için her projeye sub domain oluşturmak ve ona ssl satın almak maliyet gerektiren bir iş. farklı farklı ortamlarda çalıştırıyorum projeyi.
UAT, Dev, PROD, Live diye 4 farklı ortam var yani 4x3 den 12 tane farklı subdomain almamız ve buna ssl satın almamız gerekiyor. Subdomain olmadan bu işi nasıl çözebilirim fikir verebilecek var mı ?
Kaldı ki subdomain alsam bile nodejs express.js çalışıyor orada 80 ve 443 portu dolu olduğundan onu nasıl çalıştırıcam :/
Abi subdomain SSL'i için SNI kullanabilir ya da daha iyisi wildcard tek bir SSl alabilirsin zannımca? -
Reverse proxy de işini görebilir.
-
antichrist bunu yazdı
Reverse proxy de işini görebilir.
+1
Reverse proxying yaparak apiyi falan subfolder'a daya.
Blabla.com/api ---- blabla.com/ws/
-
@CanKirca wildssl en son çözüm hocam ya para vermek istemiyoruz açıkcası. Biraz start up kafasındayız yeni bir proje geliştiriyoruz arkadaşlarlar da.
@end , @antichrist React.JS kullandık hocam front-end de bunu bir türü beceremedim. Front-end de route sapıtıyor öyle yapınca da :/ Bunu .htaccess ile çözebilir miyim acaba bilemedim. atıyorum xxx.com/api görürsen bu projeyi çalıştırma diğer tüm route burdan çalışsın gibi. Bu sayede xxx.com/api path dışındakilerin hepsi çalışır diğerleri çalışmaz .Net e gider.
-
traefik/caddy/nginx tarzı bir şey koy önüne. çözersin kolayca.
site.com/api
site.com/api2 vs diye ayirirsin pathlere gore
-
MhmdAlmz bunu yazdı
@CanKirca wildssl en son çözüm hocam ya para vermek istemiyoruz açıkcası. Biraz start up kafasındayız yeni bir proje geliştiriyoruz arkadaşlarlar da.
@end , @antichrist React.JS kullandık hocam front-end de bunu bir türü beceremedim. Front-end de route sapıtıyor öyle yapınca da :/ Bunu .htaccess ile çözebilir miyim acaba bilemedim. atıyorum xxx.com/api görürsen bu projeyi çalıştırma diğer tüm route burdan çalışsın gibi. Bu sayede xxx.com/api path dışındakilerin hepsi çalışır diğerleri çalışmaz .Net e gider.
Nginxte frontendin önüne koy o routelari?
-
@end link vs bir şey var mı hocam inceleyeyim bahsettiğinden bir şey anlamıyorum çünkü tecrübemin olduğu konular değil :/
@yolbulucu caddy işimi görecek gibi
http://api.example.com { root * /var/www file_server route /api* { uri strip_prefix /api reverse_proxy 127.0.0.1:1337 } route /dashboard* { reverse_proxy 127.0.0.1:1337 } }
şeklinde bir örnek paylaşmışlar bunu bir deneyeyim bakalım becerebilecek miyim.
-
prod haricindeki ortamlara neden ssl satın alcaksın ki?
daya lets encrypt'i.
senin ihtiyacın reverse proxy. node.js 'e direk 80 ve 443 verme.
koy öne bir nginx. gelen hostname göre farklı portlara proxy_pass yap.
bu arada meraktan soruyorum prod ve live zaten aynı ortami ifade etmiyor mu? :)
hermesthecat tarafından 07/Haz/22 14:57 tarihinde düzenlenmiştir -
abdullahazad bunu yazdı
bu arada meraktan soruyorum prod ve live zaten aynı ortami ifade etmiyor mu? :)
Caddy biraz basit geldi. Çözemezsem işi nginx deneyeceğim. Herkes nginx diye bas bas bağırıyor :D Bakim bakalım neymiş :D
Yok hocam. Dev bizim development yaptığımız ordam
Test dediğimiz devden çıkıp test edilen ortam
UAT müşteriye sunduğumuz demo (Kendine ait proje ayrı db ama ödeme kısımları vs hep proddaki kısma bakıyor iyzico vs. )
PROD (canlı ortam ama daha market sürümleri çıkılmayan ortam)
Live ( Markete gönderirken canlıya aldığımız kısım)
-
abdullahazad bunu yazdı
prod haricindeki ortamlara neden ssl satın alcaksın ki?
daya lets encrypt'i.
senin ihtiyacın reverse proxy. node.js 'e direk 80 ve 443 verme.
koy öne bir nginx. gelen hostname göre farklı portlara proxy_pass yap.
bu arada meraktan soruyorum prod ve live zaten aynı ortami ifade etmiyor mu? :)
biri staging galiba ama hangisi staging anlamadım