Fórumok
hogy tudnam megcsinalni nginx-ben, hogy minden hostot, ami nem valamihost vagy www.valamihost atiranyitson egy megfelelo cimre?
egy captive portal szeru dolgot szeretnek belole kihozni es fontos lenne tudni, hogy honnan jott a keres.
ezzel probalkoztam:
if ($host !~* ^(www\.)?valamihost) {
rewrite ^ http://valamihost/index.php?from=$host$request_uri? permanent;
break;
}
termeszetesen van egy DNS is ami minden hostot ugyanarra az IP-re old fel (ez mukodik).
catch all sem megy
server_name _;
Hozzászólások
listen 80 default;
megvolt?
első ránézésre működnie kéne. mit szolgál ki az egyes Host-okkal?
ennyi a server blokkod a configban?
server { listen 80 default; if () { ... } }
ha nincs másik vhost, a server_name nem kell.
sztem egyszerűbb ha csinálsz 2 vhost-ot:
server { listen 80; server_name valami www.valami; ... }
server { listen 80 default; location / { rewrite ... } }
~~~~~~~~
deb http://deb.metaltux.tk/ wheezy yazzy repack
igen ez jo megoldas: kell egy server ami a rendes valamihost kereseket kezeli, es kell a default server resz ami meg elkap minden mast.
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
Most igy nez ki a vhost
server {
listen 192.168.2.1:80 default;
location / {
rewrite ^ http://valamihost/index.php?from=$host$request_uri? permanent;
}
}
server {
listen 192.168.2.1:80;
server_name valamihost www.valamihost;
root /mnt/DATA/WEB/valamihost/;
index index.php index.html;
location ~ \.php$ {
..
}
}
ha beirom, hogy iajbolivck, akkor jol mukodik atiranyit a http://valamihost/index.php?from=iajbolivck/ oldalra.
de ha valamihost vagy www.valamihost -ot utok be, akkor
valamihost => http://valamihost/index.php?from=/
www.valamihost => http://valamihost/index.php?from=www.valamihost/
es ezeknek ugye maradnia kene.
Nem mintha ez annyira zavarna, de ezzel a konfiggal is ugyanazt csinalja, mint az eredetivel.
biztos nem a böngésző jegyezte meg egy korábbi rossz konfig altal küldött 301-es átirányítást?
az ilyet curl -sSi $url | sed -e '/^\r\?$/q' paranccsal szoktam tesztelni. (transzparens proxy akkor is cache-elheti a 30x headert)
~~~~~~~~
deb http://deb.metaltux.tk/ wheezy yazzy repack
+1