Apache vanuit Linux Proxy naar IIS7 op VMWare server

Pagina: 1
Acties:

  • Hobbles
  • Registratie: Augustus 2004
  • Laatst online: 30-01 12:41
Ik zit met een ietwat vreemde situatie en ik hoop dat ik dus ook in het juiste forum mijn vraag stel.

Ik heb een Linux (SuSE 10) server waarop ik via VMWare ook een Windows Server 2008 heb draaien. Op de host draait Apache die alle aanvragen naar de server verwerkt. Via een Proxy in de Apache configuratie kan ik de request doorsluizen naar de Windows Server en IIS7. Voor de default website in IIS7 werkt dit prima.

Als ik nu een 2e website wil toevoegen in IIS7 heb ik geen flauw idee wat ik verkeerd doe, want ik krijg een 404 met header informatie dat de pagina wel gerenderd wordt door mijn Windows Server. Maar ik kan nergens via log files achterhalen waar IIS7 precies gaat zoeken voor deze pagina.

Ik heb een vermoeden dat ik bij de Site Bindings iets verkeerd invul (ik vul er nu gewoon de domeinnaam in, ik veronderstel dat de Apache Proxy deze doorgeeft). Verder kan ik ook geen gepaste documentatie vinden over dit probleem.

Een oplossing die ik zelf kan verzinnen (maar verre van ideaal vind) is dat ik per Website een aparte poort instel, en dat er dus op basis van een poortkeuze in Apache naar de correcte IIS Website gelinkt wordt. (Bijvoorbeeld de default site op poort 80, de 2e op 81, en zo verder...)

Ik ben niet op zoek naar een kant-en-klaar antwoord maar naar resources waar ik meer te weten kan komen hoe ik IIS7 goed kan instellen voor mijn situatie.

Everything is possible if you really want it.


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Twee zaken, als je de request rechtstreeks naar je IIS machine doet vanuit een browser, werkt het dan wel goed?

En geef even je relevante config van Apache hoe je precies die request proxied :)

  • Hobbles
  • Registratie: Augustus 2004
  • Laatst online: 30-01 12:41
Configuratie van Apache:
code:
1
2
3
4
5
6
7
8
9
<VirtualHost *:80>
    ServerName windows.domeinnaam.be

    CustomLog /var/log/apache2/access_log
    ErrorLog /var/log/apache2/error_log

    ProxyPass / http://192.168.241.128/
    ProxyPassReverse / http://192.168.241.128/
</VirtualHost>


Als ik de request doe op de Windows server zelf krijg ik de pagina wel nadat ik de hosts file heb aangepast (leek me vreemd dat dit nodig zou zijn). Aangezien de Windows server naar de buitenwereld toe niet rechtstreeks toegankelijk is (lokaal IP, via bridging dacht ik) kan ik het dus van buitenaf niet apart testen.

ServerName is niet de echte zoals deze in mijn configuratie staat, maar de vorm is wel hetzelfde.

Everything is possible if you really want it.


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Omdat je een ProxyPass naar een IP address doet gaat IIS ook niet door hebben dat je op een bepaalde hostname iets wilt opvragen (IIS ziet gewoon een request binnenkomen voor http://192.168.241.128), je zal dus of op hostname moeten werken (eg: je maakt op je Linux hosts file een bepaalde hostname aan en die configureer je als host header in IIS), of je moet even kijken of je http://httpd.apache.org/d...xy.html#proxypreservehost een oplossing voor je is :)

  • Hobbles
  • Registratie: Augustus 2004
  • Laatst online: 30-01 12:41
elevator.... ProxyPreserveHost werkt!

Hartelijk bedankt voor de snelle inschatting! _/-\o_

Everything is possible if you really want it.