Newsgroup: it.comp.os.linux.sys
Titolo: nginx: ci avete mai fatto un pensierino?

http://farm3.static.flickr.com/2235/2298818585_3baeeeb8a7.jpg?v=0
oltre alle performance e a parte il fatto che dicono che l'utilizzo sui
web server stia crescendo in maniera iperbolica, mi piace la sintassi
parlante per le regole di reverse proxying, e url rewriting,
Unico neo: per il momento la documentazione pi� completa, � quella in
lingua originale! Nas viadnjie!
-- 
echo onailimissaM | awk 'BEGIN { FS = "" }
{ for (i = NF; i >= 1; i-- )
  printf $i }'; echo

 lingua originale! Nas viadnjie!
I traduttori automatici come vanno col russo? (magari quello di google
bene) se vai da russo in inglese.
Io mi ero divertito con oops (un proxy che ho usato per un certo tempo
al posto di squid); per fortuna il file di configurazione non era in
russo.

 russo.
in realt� esiste la wiki in inglese, e persino quella in italiano, per�
sono poco complete. Ci sono un paio di esempio del cavolo, sparsi ed
� un casino trovare tutto quello che ti serve.
Per esempio:
la variabile per definire gli "ip sorgenti", spesso utilizzata nelle
regole di rewrite e proying, non so ancora come si chiama :(


 � un casino trovare tutto quello che ti serve.
Mi servirebbe un casino nginx, un casino.
Ma per adesso uso pound, proprio per questa necessit� di sperimentare 
dovuta a mancanza persino di esempi.
Certo sarebbe un bel vedere come strumento per il reverse proxying 
complesso.

 complesso.
E' stupendo, nel giro di un anno è già utilizzato sul 6% dei
webserver, ma se non esce fuori una documentazione decente, sto
arrivando alla conclusione che è inutilizzabile.
Guarda qua il problema delle variabili di cui ti parlavo:
http://www.ruby-forum.com/topic/152192
a un certo punto, sembra apparire un link: eccoti qui le variabili che
cerchi .... clicchi sul link e il link non funziona.
su linux lanci: man nginx (l'unica pezza d'appoggio a disposizione) e
ti compaiono 4 righe ed un suggerimento per scaricare la
documentazione da un link. Apri il link, e anche questa volta il link
non funziona....
Come fanno il 6% degli utilizzatori di server web a optare per un
server senza documentazione?
Nginx: nas vidanjie!


in realtà, dopo aver scazzato un po' inizio a fare i primi passi
avanti.
Non mi si dica che questa sintassi non è molto più gradevole di quella
del mod_proxy di apache. Senza astruserie, cookie pass domain, proxy
pass reverse. Gli dici, se la condizione è soddisfatta, fai così. In
una riga:
location /ajaxterm {
   proxy_set_header X-Forwarded-Host $host;
   proxy_set_header X-Forwarded-Server $host;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   if ($remote_addr !~ "192.168.0.*") {
      rewrite ^/(.*) 
https://maxadamo.dyndns.org/$1
 permanent;
      }
   if ($remote_addr ~ "192.168.0.*") {
      proxy_pass 
http://127.0.0.1:8022
;
   }
}
Prossimo passo: nginx + memcached e load balancer e mail proxy :-)

       }
Mi ha risolto l'annoso e irrisolto problema di apache, che quando fai
una rewrite da http a https ti chiede la password due volte.  Mitico!

 [...]
Ciao   Manlio

 
http://wiki.nginx.org/Main
Ciao,
    si lo avevo trovato ed usato.
In effetti sono ritornato al problema precednete, ovvero che con NGINX 
IIS sul server exchange non mi autentica, cosi come non autentica nulla 
delle sessioni windows authentication integrated.
Questo i+ il mio .conf
upstream test {
server 192.168.1.12;
}
server {
     listen 
128.0.0.2:80
;
     server_name 
www.sito1.com
;
     location / {
         proxy_pass 
http://test
;
         include /etc/nginx/proxy.conf;
         }
        }
---
Ovvero, creo degli upstrema indicando il sito di destinazione, poi nella 
sezioen server indico i dati del listener nginx, il nome del server 
(HOST della GET) e la location (sempre nel GET), che corrisponde 
all'upstrem.
COsi funziona, in parte: arrivano le giuste richieste, tranne quella ad 
un server diverso, ma in ongi caso, qualsiasi caso, si usi la windows 
intgrated uathitncation, sia con browser IE che altri, non funziona.
VIene inviato qualcosa che non è accettato dal server e quindi mi 
richiede sempre la password...

 Anche io ho scritto un paio di moduli per Nginx, tempo fa.
che moduli? gi� che ci sei ... come funziona con i CGI?
ancora non ho avuto molto tempo per guardarci... mi pare che si debba
lanciare uno script locale, oltre nginx, che faccia da proxy per le
richieste e poi nginx user� il socket creato da quello script.


 intgrated uathitncation, sia con browser IE che altri, non funziona.
Gli header usati per l'autenticazione dovrebbero essere passati da Nginx 
ad IIS così come sono; dovresti riportare la configurazione usata, come 
ho scritto sopra.
Ciao  Manlio

 nginx userà il socket creato da quello script.
Se sei su Unix probabilmente di conviene usare thttpd.
Ciao  Manlio

 
Dimenticavo; una piccola guida che ho scritto tempo fa per utilizzare 
thttpd con Nginx:
http://wiki.list.org/display/DOC/Mailman+and+nginx
Ciao  Manlio

 ho scritto sopra.
Grazie.

 
Non conosco come funziona l'autenticazione integrata di Windows, ma è 
possibile che il problema sia causato dal fatto che IIS vede arrivare la 
richiesta HTTP dal server dove risiede Nginx, invece che dall'IP 
dell'utente?
Ciao  Manlio

 
Si, il sospetto era giusto.
http://en.wikipedia.org/wiki/Integrated_Windows_Authentication
Integrated Windows Authentication works with most modern browsers[4], but 
does not work over HTTP proxy servers.[3] Therefore, it is best for use 
in intranets where all the clients are within a single domain. It may 
work with other Web browsers if they have been configured to pass the 
user's logon credentials to the server that is requesting authentication
[3] 
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/
Library/IIS/523ae943-5e6a-4200-9103-9808baa00157.mspx?mfr=true
Ho anche trovato questo messaggio:
http://serverfault.com/questions/63072/nginx-reverse-proxy-to-iis6-with-
auth
Ciao  Manlio

 auth
A me pare quindi confermata la tesi per cui ngninx NON funziona con tale 
autenticazione.
Enrico deve ancora dirmi come è riuscito...
Saluti

 Enrico deve ancora dirmi come è riuscito...
Personalmente ho utilizzato altre autenticazioni, in cui Nginx rigirava la 
chiamata al web server di turno (pensavo che fosse chiaro che non avevo 
lavorato con IIS e autentcazione NTLM, mi scuso quindi di aver creato 
confusione in tal senso)
Enrico

 
Invece a me sembra, invece, che è tale autenticazione a non funzionare 
con un proxy http normale.
Hai provato ad usare ad esempio Apache?
Oppure a seguire le indicazioni dei post che ho indicato?
Ciao  Manlio

 Oppure a seguire le indicazioni dei post che ho indicato?
Sono indicazioni sommarie su un porblema non realmente legato al mio.
Semplicemente EVITARE che mi chieda la password, io invece la voglio 
scrivere ed andare avanti, cosi come faccio adesso.
In ogni caso, ho provato, non funziona.
ciao

 complesso.
Se ti serve fare reverse proxy complesso, se usi debian, se vuoi 
"rischiare" di usare un SW closed source, se vuoi fare da beta tester, te 
lo do io uno strumento di proxy (non caching).
Puoi sminchiettare tutti gli header che vuoi, ridirezionare verso 
l'upstream che vuoi, shapare la connessione o la singola richiesta, 
insomma, fare un pò quello che vuoi perchè è tutto pilotato tramite LUA, 
anche dinamicamente, richiesta per richiesta.
Max

 anche dinamicamente, richiesta per richiesta.
Max, si fai pure.
mike
at*compleasy*com