nginx, subdomein, komt uit bij verkeerde website

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • walkthisworld
  • Registratie: Maart 2003
  • Laatst online: 08-10 21:54
Dag,

Ik heb een domeinnaam (example.org).
Nu wil ik twee subdomeinen maken (a.example.org en b.example.org).
Ik heb de DNS aangepast bij Hostnet.
Ik heb een vast IP van mijn provider.

Ik heb twee virtuele machines met NGINX.
Met interne ip-adressen (192.168.0.100 en 192.168.0.101).
Hierop staan twee web-sites. Deze werken als ik in de browser het interne IP intik.

En ik heb nog een derde VM met NGINX (192.168.0.102).
Mijn router forward poort 80 en 443 naar 192.168.0.102.

Nu wil ik dat a.example.org de website op 192.168.0.100 laat zien.
En dat b.example.org de website op 192.168.0.101.

De nginx config file op de derde VM ziet er zo uit:
server {
listen 80;
server_name a.example.org;
return 301 $scheme://192.168.0.100;
}

server {
listen 80;
server_name b.example.org;
return 301 $scheme://192.168.0.101;
}
Als ik beide subdomeinen probeer, dan kom ik elke keer op website A uit.
Wat doe ik fout?

Alle reacties


Acties:
  • 0 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 12-10 17:21

DataGhost

iPL dev

Ik heb de syntax/opbouw van nginx-configs niet meer direct paraat dus ik kan even niets zeggen over de correctheid van je configuratie. Afgaande op wat ik lees: heb je misschien b.example.org eerder al met een 301 naar .100 laten wijzen? Dan heeft je browser dat waarschijnlijk opgeslagen aangezien dat een permanente redirect is. Los daarvan gaat heel dit verhaal niet werken van buitenaf ("Ik heb een vast IP van mijn provider"), aangezien je redirect naar een intern IP-adres. Je zal een reverse proxy-oplossing moeten gebruiken. Dat kan gelukkig ook met nginx.

[ Voor 6% gewijzigd door DataGhost op 05-04-2020 14:57 ]


Acties:
  • 0 Henk 'm!

  • thijsjek
  • Registratie: Juni 2010
  • Laatst online: 25-02 08:41
code:
1
2
3
4
5
6
7
8
9
10
11
12
server {
    server_name a.example.com;
    listen 80;
    return 301 https://$host$request_uri;
}
 
server {   
    location / { 
        proxy_pass http://192.168.0.101;
    }

    server_name a.example.com;


ik heb per site een file: a.conf en b.conf

Ik gebruik namecheap voor m'n website. en daar heb ik bij de dns instellingen:
A-record
Host: a
value: je public ipv4.
Dan regelt nginx de rest

Als je meer informatie nodig hebt, of je wil een A+ rating op de meeste websites, laat maar wat weten.

[ Voor 31% gewijzigd door thijsjek op 05-04-2020 16:36 ]