nginx reverse proxy voor apache

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • gassiepaart
  • Registratie: April 2004
  • Laatst online: 11-07 12:50
Ik heb nginx op mijn thuisserver draaien om oa sickbeard, couchpotato, sabnzbd, enz... te kunnen bereiken via
http://[servername]/[servicename]

Hiervoor heb ik apache op port 8001 draaien en nginx op 80. Alle niet apache locations werken (behalve plex mediaserver). Maar om bijvoorbeeld een apache installatie zoals phpmyadmin of phpsysinfo te kunnen bereiken moet er iets extra's gebeuren. Op dit moment krijg op http://server/phpsysinfo altijd de volgende vertaling http://server:8000/phpsysinfo

configuratie
/etc/nginx/sites-enabled/default

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
server {
       listen 80;
       server_name localhost 127.0.0.1 mao;
       server_name_in_redirect off;

       location / {

                proxy_pass http://localhost:8000;
                proxy_redirect http://localhost:8000 http://localhost;
                rewrite ^/(.*)/$ /$1;
                include /etc/nginx/proxy_params;
       }

       #SABNZBD
       location /sabnzbd {
                proxy_pass http://localhost:5050;
                include /etc/nginx/proxy_params;
       }
     # enz...
}



code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $http_host;


client_max_body_size 100M;
client_body_buffer_size 1m;
proxy_intercept_errors on;
proxy_buffering on;
proxy_buffer_size 128k;
proxy_buffers 256 16k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_max_temp_file_size 0;
proxy_read_timeout 300;



Wat doe ik verkeerd?

Acties:
  • 0 Henk 'm!

  • Solopher
  • Registratie: December 2002
  • Laatst online: 02-07 11:24
Bij mij staat er geen http://localhost maar gewoon 127.0.0.1, hoe heb jij je hosts file ingesteld?

code:
1
2
3
4
        location /sabnzbd {
            proxy_pass http://127.0.0.1:8080;
            include /etc/nginx/proxy_params;
        }

Acties:
  • 0 Henk 'm!

  • gassiepaart
  • Registratie: April 2004
  • Laatst online: 11-07 12:50
Dat zou niet moeten uitmaken; localhost en 127.0.0.1 zijn gelijk en resolved naar 127.0.0.1

Acties:
  • 0 Henk 'm!

  • Solopher
  • Registratie: December 2002
  • Laatst online: 02-07 11:24
Waarom gebruik je proxy_redirect?

Die staat bij mij sowieso uit in proxy_params

Acties:
  • 0 Henk 'm!

  • gassiepaart
  • Registratie: April 2004
  • Laatst online: 11-07 12:50
ooit ergens gelezen... http://www.cyberciti.biz/...refresh-response-headers/

Ik zal hem eens proberen zonder...(resultaat: nog steeds niet goed), maar roep je nou enkel de verschillen tussen jouw configuratie en die van mij of heb je er daadwerkelijk verstand van?

[ Voor 5% gewijzigd door gassiepaart op 23-10-2012 14:24 ]


Acties:
  • 0 Henk 'm!

  • b0p
  • Registratie: Augustus 2002
  • Laatst online: 13-06 22:04

b0p

Hmm.. Voor Apache zou je dan iets kunnen gebruiken als:
code:
1
ProxyPass /phpsysinfo !


Maar dat gaat hier helaas niet werken. Kun je misschien iets met het volgende blokje code?
code:
1
2
3
location ^~ /phpsysinfo {
     root /pad/naar/apache/document/root;
}


Zie deze pagina voor meer informatie.

[ Voor 11% gewijzigd door b0p op 24-10-2012 21:43 ]

Specs: 1,98 m | 83 kg | mt 45


Acties:
  • 0 Henk 'm!

  • KennieNL
  • Registratie: Mei 2007
  • Laatst online: 12-07 16:07
Haal proxy_redirect eens weg
Die doet namelijk een redirect naar de client dmv headers volgens mij.

http://nginx.org/en/docs/...odule.html#proxy_redirect

Acties:
  • 0 Henk 'm!

  • gassiepaart
  • Registratie: April 2004
  • Laatst online: 11-07 12:50
okay alle proxy_redirect staan uit...

maar nog steeds niet het gewenste resultaat:
http://server/blabla -> http://server:8000/blabla
en
http://server/blabla/ -> http://server/blabla/

Dus het toevoegen van de laatste slash werkt. Hoe zorg ik ervoor dat er altijd een "/" achteraan wordt geplakt?
Pagina: 1