Acties:
  • 0 Henk 'm!

  • Mikeh
  • Registratie: December 2009
  • Laatst online: 18-09 10:49
Hopelijk is dit het goede forum voor mijn probleem, zo niet mijn excuus.

Ik zit met het volgende probleem.. Ik heb een Nginx server geconfigureerd op Ubuntu en hier draaien een aantal websites op. Dit werkt verder perfect.

Nu heb ik een reverse proxy ingesteld voor een aantal klanten. Zij maken een verbinding naar de reverse proxy (url), deze haalt gegevens op en stuurt dit weer naar de klant. Dit werkt in principe perfect maar ik zit met het probleem dat bepaalde content op de pagina, dat wordt teruggegeven, vaste links heeft naar bepaalde javascript files.

Hieronder staat de Nginx config. De klant gaat naar support.xxxxx.nl en krijgt de pagina https://xxxxx.com te zien terwijl de URL in de adresbalk nog steeds support.xxxxx.nl is. Dit werkt verder perfect.

code:
1
2
3
4
5
6
7
8
9
10
server{
    listen 80;
    server_name support.xxxxx.nl ;
    
    location / {         
        resolver            8.8.8.8;
        proxy_pass          https://xxxxx.com;
        proxy_set_header        Accept-Encoding ' ';
    }
}


Echter, op de pagina staan nog 3 verwijzingen naar .js files;
<script src="https://assets.xxxxx.com/assets/auto_included.js" type="text/javascript"></script>

Nu is mijn vraag: Hoe zorg ik ervoor dat deze links, via de reverse proxy, worden veranderd in support.xxxxx.nl/assets/.... ?
De betreffende .js files zijn gewoon beschikbaar als ik naar support.xxxxx.nl/assets/auto_included.js ga.

Ben al een aantal uur aan het Googelen geweest, meerdere dingen geprobeerd zoals rewrite maar krijg het maar niet voor elkaar. Is het bovenstaande uberhaupt mogelijk?

Acties:
  • 0 Henk 'm!

  • daft_dutch
  • Registratie: December 2003
  • Laatst online: 08-09 21:46

daft_dutch

>.< >.< >.< >.<

Je kan het oplossen door relatieve links te gebruiken in plaats van absolute links

>.< >.< >.< >.<


Acties:
  • 0 Henk 'm!

  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

Hierbij de config in code tag voor leesbaarheid :)
code:
1
2
3
4
5
6
7
8
9
10
server{
    listen 80;
    server_name support.xxxxx.nl ;
    
    location / {         
        resolver            8.8.8.8;
        proxy_pass          https://xxxxx.com;
        proxy_set_header        Accept-Encoding ' ';
    }
}


Wat je wil doen is overigens niet heel makkelijk uit te voeren met Nginx (in ieder geval, niet out of the box) voor alle gevallen. Maar voor dit simpele geval is het gelukkig wel vrij eenvoudig met de substution module: http://wiki.nginx.org/HttpSubModule

code:
1
2
sub_filter 'https://assets.xxxxx.com/' '/';
sub_filter_once off;

Blog [Stackoverflow] [LinkedIn]


Acties:
  • 0 Henk 'm!

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Een nette oplossing is dat echter niet; beter kun je 'assets.xxxxx.com' ook laten proxyen.

All my posts are provided as-is. They come with NO WARRANTY at all.


Acties:
  • 0 Henk 'm!

  • Mikeh
  • Registratie: December 2009
  • Laatst online: 18-09 10:49
Wolfboy schreef op vrijdag 03 mei 2013 @ 14:00:
Hierbij de config in code tag voor leesbaarheid :)
code:
1
2
3
4
5
6
7
8
9
10
server{
    listen 80;
    server_name support.xxxxx.nl ;
    
    location / {         
        resolver                    8.8.8.8;
        proxy_pass          https://xxxxx.com;
        proxy_set_header        Accept-Encoding ' ';
    }
}


Wat je wil doen is overigens niet heel makkelijk uit te voeren met Nginx (in ieder geval, niet out of the box) voor alle gevallen. Maar voor dit simpele geval is het gelukkig wel vrij eenvoudig met de substution module: http://wiki.nginx.org/HttpSubModule

code:
1
2
sub_filter 'https://assets.xxxxx.com/' '/';
sub_filter_once off;
Top, bedankt! :+ Dat was inderdaad de oplossing die ik zocht.