GÜNCELLEME: Aşağıda iki cevapla oynadıktan sonra gözden geçirilmiş bir soru ekledim.
Merhaba,
Bunu okuyorsanız muhtemelen Apache'nin mod_proxy'sini ve ProxyPass işlevini biliyorsunuzdur. Diğerleri gibi, iç ağımızın dışından erişebileceğim bir uygulamaya sahip olma sorunum var, ancak bu uygulamanın kendisi farklı makinelerde diğer dahili uygulamalara erişiyor ve bu kurulumla uzaktan erişime girdiğinizde işler ters gidiyor.
Yani, kurulumum çok basit, bende var:
Makine # 1'in uzaktan erişimi etkin, bir ana bilgisayar adı üzerinden erişiyorum ve üzerinde çalışan PHP uygulamasını tükürüyor.
Makine # 2 Django çalıştıran yeni bir uygulamadır, tamamen farklı bir arka uç (hatta yetki) kullanır, ayrı bir makinede barındırılır. İntranetimizde, temel olarak dahili 192.168.0.101 ipine bağlanan basit bir ana bilgisayar adı ile erişiyoruz.
ProxyPass ile oynamak için denedim, bu yüzden örneğin, / pass yeni uygulamaya gönderir:
ProxyPass / yeni http://192.168.0.101/
Bu tür işler, diğer uygulamaya istek alır, ancak kırılır çünkü Django uygulamam anında tanımadığı / auth / login / dizinine yönlendirmek istiyor. Url'yi foo.net/new/auth/login olarak kendim değiştirirsem giriş sayfamı alıyorum, ancak tahmin edebileceğiniz gibi tarama sırasında bunu yapmak uygun değil.
Peki ProxyPass'ın istediğim gibi çalışmasını nasıl sağlayabilirim? Apache ile bir şey yapmam gerekiyor mu, böylece url diğer uygulamada her zaman yazıyor / yeni mi, yoksa bu Django uygulamamda değiştirmem gereken bir şey mi?
Herhangi bir ipucu ve işaretçiler de büyük mutluluk duyacağız. Zaman ayırdığınız için teşekkürler