Re: config' simplissime de nginx

2013-05-14 Par sujet Jean-Marc
On Tue, 14 May 2013 21:52:48 +0200
mirtouf  wrote:

> Bonsoir,

Salut,

> 
> depuis la version 1.4.0 (et je ne sais plus quelle version de 

Debian Jessie fournit un nginx 1.2.6.

> développement 1.3.x), il faut _explicitement_ indiquer à nginx d'écouter 
> sur la couche IPv4 de l'interface sinon aucune connexion IPv4 ne sera 
> possible. La séparation IPv4 - IPv6 se fait directement dans la 
> configuration du logiciel et non plus via un appel au noyau.
> Le wiki n'est pas à jour ceci dit.

Et je me demande si les problèmes ne viennent pas de là.
Un mix des config' v1.2.x et v1.4.x

> 
> Donc pour nginx 1.4.0 et ultérieur :
> listen 80;
> listen [::]:80;
> dans votre fichier de configuration kivabien sans quoi, si comme moi 
> votre FAI est resté bloqué sur IPv4, une mise à jour de nginx pourra 
> rendre votre site a priori *complètement* inaccessible même si ce n'est 
> pas le cas.
> 

Donc l'option correcte dans la config' 1.2.X est de déjà explicitement 
spécifier l'écoute IPv4 et IPv6 et non pas l'écoute IPv4 sur l'IPv6.

-- 
Jean-Marc 


pgpxZnHqml_uR.pgp
Description: PGP signature


Re: config' simplissime de nginx

2013-05-14 Par sujet mirtouf

Le 13/05/2013 11:23, Raphaël POITEVIN a écrit :

Jean-Marc  writes:


Le soucis vient du fichier de config' sites-enabled/default qui spécifie les 
directives listen suivantes :
listen 80;
listen [::]:80 default_server;

Or, suivant la doc' nginx (http://wiki.nginx.org/HttpCoreModule#listen),
" When you enable the address [::]:80, binding port 80 using IPv6, in the listen 
directive, in Linux, by default, the IPv4 port 80 is also enabled. Meaning that nginx 
listens for both IPv4 and IPv6 incoming traffic. Therefore if you erroneously specify 
also a IPv4 address you'll get an already bind address error when reloading nginx 
configuration."

En clair, si nginx écoute sur le port 80 en IPv6, il le fera aussi par défaut 
sur le port 80 IPv4.  Et spécifier les deux conduit à une erreur au chargement.

Et si je supprime la directive "liste 80;", nginx démarre.

La séparation IPv4 et v6 est possible via sysctl net.ipv6.bindv6only mais la 
valeur par défaut indique de ne pas séparer l'IPv4 et v6.

Donc, la config' livrée avec nginx ne fonctionne pas.


Elle marchait avant, c'est suite à une mise à jour, je ne sais laquelle
car, j'ai fais longtemps des mises à jours sans redémarrer nginx ;
j'avais rencontré le pb suite à un redémarrage de la machine que j'ai
résolu en effet comme toi.


Bonsoir,

depuis la version 1.4.0 (et je ne sais plus quelle version de 
développement 1.3.x), il faut _explicitement_ indiquer à nginx d'écouter 
sur la couche IPv4 de l'interface sinon aucune connexion IPv4 ne sera 
possible. La séparation IPv4 - IPv6 se fait directement dans la 
configuration du logiciel et non plus via un appel au noyau.

Le wiki n'est pas à jour ceci dit.

Donc pour nginx 1.4.0 et ultérieur :
   listen 80;
   listen [::]:80;
dans votre fichier de configuration kivabien sans quoi, si comme moi 
votre FAI est resté bloqué sur IPv4, une mise à jour de nginx pourra 
rendre votre site a priori *complètement* inaccessible même si ce n'est 
pas le cas.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-requ...@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Archive: http://lists.debian.org/51929610.4080...@mirtouf.net



Re: config' simplissime de nginx

2013-05-13 Par sujet Raphaël POITEVIN
Jean-Marc  writes:

> Le soucis vient du fichier de config' sites-enabled/default qui spécifie les 
> directives listen suivantes :
>   listen 80;
>   listen [::]:80 default_server;
>
> Or, suivant la doc' nginx (http://wiki.nginx.org/HttpCoreModule#listen),
> " When you enable the address [::]:80, binding port 80 using IPv6, in the 
> listen directive, in Linux, by default, the IPv4 port 80 is also enabled. 
> Meaning that nginx listens for both IPv4 and IPv6 incoming traffic. Therefore 
> if you erroneously specify also a IPv4 address you'll get an already bind 
> address error when reloading nginx configuration. "
>
> En clair, si nginx écoute sur le port 80 en IPv6, il le fera aussi par défaut 
> sur le port 80 IPv4.  Et spécifier les deux conduit à une erreur au 
> chargement.
>
> Et si je supprime la directive "liste 80;", nginx démarre.
>
> La séparation IPv4 et v6 est possible via sysctl net.ipv6.bindv6only mais la 
> valeur par défaut indique de ne pas séparer l'IPv4 et v6.
>
> Donc, la config' livrée avec nginx ne fonctionne pas.

Elle marchait avant, c'est suite à une mise à jour, je ne sais laquelle
car, j'ai fais longtemps des mises à jours sans redémarrer nginx ;
j'avais rencontré le pb suite à un redémarrage de la machine que j'ai
résolu en effet comme toi.
-- 
Raphaël
« Tout chercheur plongé dans la science subit une poussée de bas en haut 
susceptible de lui remonter le moral. »
Monsieur Cyclopède

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-requ...@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Archive: http://lists.debian.org/8761yncjxn.fsf@mozart.musiciens



Re: config' simplissime de nginx

2013-05-12 Par sujet Jean-Marc
On Sun, 12 May 2013 21:31:59 +0200
Adrien Poupin  wrote:

Salut Adrien,

> 
> Par contre j'ai chez moi :
> #listen   80; ## listen for ipv4; this line is default and implied
> #listen   [::]:80 default_server ipv6only=on; ## listen for ipv6
> C'est la configuration par défaut, et ce faisant tu peux écouter sur du
> ipv6 seul. Normalement c'est bon ! Ça répond à ton souci ?

Comme dans ta config', j'ai préféré séparer l'IPv4 et l'IPv6 avec l'option 
ipv6only=on;
Après cette modif, cela fonctionne.

Et pas besoin de rapporter de bug, c'est déjà fait :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=707110

> 
> -- 
> Adrien
> 

-- 
Jean-Marc 


pgp6qkgTECxlW.pgp
Description: PGP signature


Re: config' simplissime de nginx

2013-05-12 Par sujet Adrien Poupin
Le 12/05/2013 18:25, Jean-Marc a écrit :
> un peu de suivi concernant ce problème.
>
> On Sun, 12 May 2013 15:39:40 +0200
> Jean-Marc  wrote:
>
>> Hélas, si un process nginx ou tout autre était en train de tourner et 
>> d'écouter sur le port 80, j'en serai ravis.  Mais ce n'est pa le cas.
>>
>> Seul nginx lui-même quand j'essaie de la démarrer écoute sur ce port.
>> Et cela semble le bloquer puisqu'il affiche des erreurs avant de s'arrêter.
>> Et puis, plus rien ne bloque ce port.
>>
> Le soucis vient du fichier de config' sites-enabled/default qui spécifie les 
> directives listen suivantes :
>   listen 80;
>   listen [::]:80 default_server;
>
> Or, suivant la doc' nginx (http://wiki.nginx.org/HttpCoreModule#listen),
> " When you enable the address [::]:80, binding port 80 using IPv6, in the 
> listen directive, in Linux, by default, the IPv4 port 80 is also enabled. 
> Meaning that nginx listens for both IPv4 and IPv6 incoming traffic. Therefore 
> if you erroneously specify also a IPv4 address you'll get an already bind 
> address error when reloading nginx configuration. "
>
> En clair, si nginx écoute sur le port 80 en IPv6, il le fera aussi par défaut 
> sur le port 80 IPv4.  Et spécifier les deux conduit à une erreur au 
> chargement.
>
> Et si je supprime la directive "liste 80;", nginx démarre.
>
> La séparation IPv4 et v6 est possible via sysctl net.ipv6.bindv6only mais la 
> valeur par défaut indique de ne pas séparer l'IPv4 et v6.
>
> Donc, la config' livrée avec nginx ne fonctionne pas.
>
> Bugreport ?
>
Au temps pour moi, ce matin je t'ai dit des bêtises.
Par contre j'ai chez moi :
#listen   80; ## listen for ipv4; this line is default and implied
#listen   [::]:80 default_server ipv6only=on; ## listen for ipv6
C'est la configuration par défaut, et ce faisant tu peux écouter sur du
ipv6 seul. Normalement c'est bon ! Ça répond à ton souci ?

-- 
Adrien
---



signature.asc
Description: OpenPGP digital signature


Re: config' simplissime de nginx

2013-05-12 Par sujet Jean-Marc
On Sun, 12 May 2013 17:44:28 +0200
Bzzz  wrote:

Salut Bzzz,

> On Sun, 12 May 2013 15:39:40 +0200
> Jean-Marc  wrote:
> 
> > Seul nginx lui-même quand j'essaie de la démarrer écoute sur ce port.
> > Et cela semble le bloquer puisqu'il affiche des erreurs avant de
> > s'arrêter. Et puis, plus rien ne bloque ce port.
>  
> tail /var/log/nginx/error.log

Me donne les mêmes erreurs que celles affichées à l'écran lors du démarrage.

> 
> telnet localhost (ou micro.domain) 80
> 

Et rien n'écoute.  Je viens aussi de poster un autre mail avec la cause du 
problème et le pourquoi nginx ne démarre pas avec la config' fournie par le 
paquet.

Merci pour tes réponses et le suivi de mon problème.

-- 
Jean-Marc 


pgpowThvXF54z.pgp
Description: PGP signature


Re: config' simplissime de nginx

2013-05-12 Par sujet Jean-Marc
un peu de suivi concernant ce problème.

On Sun, 12 May 2013 15:39:40 +0200
Jean-Marc  wrote:

> 
> Hélas, si un process nginx ou tout autre était en train de tourner et 
> d'écouter sur le port 80, j'en serai ravis.  Mais ce n'est pa le cas.
> 
> Seul nginx lui-même quand j'essaie de la démarrer écoute sur ce port.
> Et cela semble le bloquer puisqu'il affiche des erreurs avant de s'arrêter.
> Et puis, plus rien ne bloque ce port.
> 

Le soucis vient du fichier de config' sites-enabled/default qui spécifie les 
directives listen suivantes :
listen 80;
listen [::]:80 default_server;

Or, suivant la doc' nginx (http://wiki.nginx.org/HttpCoreModule#listen),
" When you enable the address [::]:80, binding port 80 using IPv6, in the 
listen directive, in Linux, by default, the IPv4 port 80 is also enabled. 
Meaning that nginx listens for both IPv4 and IPv6 incoming traffic. Therefore 
if you erroneously specify also a IPv4 address you'll get an already bind 
address error when reloading nginx configuration. "

En clair, si nginx écoute sur le port 80 en IPv6, il le fera aussi par défaut 
sur le port 80 IPv4.  Et spécifier les deux conduit à une erreur au chargement.

Et si je supprime la directive "liste 80;", nginx démarre.

La séparation IPv4 et v6 est possible via sysctl net.ipv6.bindv6only mais la 
valeur par défaut indique de ne pas séparer l'IPv4 et v6.

Donc, la config' livrée avec nginx ne fonctionne pas.

Bugreport ?

-- 
Jean-Marc 


pgp2f17Q6Jy6Q.pgp
Description: PGP signature


Re: config' simplissime de nginx

2013-05-12 Par sujet Bzzz
On Sun, 12 May 2013 15:39:40 +0200
Jean-Marc  wrote:

> Seul nginx lui-même quand j'essaie de la démarrer écoute sur ce port.
> Et cela semble le bloquer puisqu'il affiche des erreurs avant de
> s'arrêter. Et puis, plus rien ne bloque ce port.
 
tail /var/log/nginx/error.log

telnet localhost (ou micro.domain) 80

devrait renvoyer (si nginx est actif sur le port 80):
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

400 Bad Request

400 Bad Request
nginx


Connection closed by foreign host.
lors du CTRL-D pour sortir du telnet.

-- 
This sentence does in fact not have the property it claims not to have.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-requ...@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Archive: http://lists.debian.org/20130512174428.0091dcf1@anubis.defcon1



Re: config' simplissime de nginx

2013-05-12 Par sujet Jean-Marc
On Sun, 12 May 2013 15:15:24 +0200
Bzzz  wrote:

> netstat -pna|grep ngi

Hélas, si un process nginx ou tout autre était en train de tourner et d'écouter 
sur le port 80, j'en serai ravis.  Mais ce n'est pa le cas.

Seul nginx lui-même quand j'essaie de la démarrer écoute sur ce port.
Et cela semble le bloquer puisqu'il affiche des erreurs avant de s'arrêter.
Et puis, plus rien ne bloque ce port.

-- 
Jean-Marc 


pgpNA9t7KogDN.pgp
Description: PGP signature


Re: config' simplissime de nginx

2013-05-12 Par sujet Bzzz
On Sun, 12 May 2013 14:38:38 +0200
Jean-Marc  wrote:

> J'aimerai installer un petit nginx web sur mon board ARM.

netstat -pna|grep ngi

-- 
Ben dit : je valide j'ai perdu du gras, la balance a parlé
Ben dit : Mhhh je me disais bien que le timeout des regards des femelles
  était plus long ces derniers temps

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-requ...@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Archive: http://lists.debian.org/20130512151524.59a1f17d@anubis.defcon1



Re: config' simplissime de nginx

2013-05-12 Par sujet Jean-Marc
On Sun, 12 May 2013 14:45:12 +0200
Adrien Poupin  wrote:

> Salut,
> Je pense que tu as déjà un serveur de démarré. Du coup :
> # service apache2 stop
> # update-rc.d -f apache2 remove
> # service nginx start
> # update-rc.d -f nginx defaults
> 
> Si ce n'est pas apache qui est démarré, c'est peut-être httpd (donc même
> chose en replaçant apache2 par httpd).
> Normalement ça devrait déjà te faire avancer :-)
> 
httpd:
  Installé : (aucun)
  Candidat : (aucun)
 Table de version :
apache2:
  Installé : (aucun)
  Candidat : 2.2.22-13
 Table de version :
 2.2.22-13 0
500 http://ftp.be.debian.org/debian/ testing/main armhf Packages

Et ni lsof ni netstat ne montre un process écoutant sur le port 80.

> Tu veux faire tourner du php sur ton nginx ?

Peut-être.

> 
> Adrien.
> 
> 
> Le 12/05/2013 14:38, Jean-Marc a écrit :
> > Salut la liste,
> >
> > J'aimerai installer un petit serveur web sur mon board ARM.
> > J'ai pensé à nginx.
> > J'ai donc installé nginx.
> > Mais la config' semble vide.
> > Et quand je démarre via , j'ai un message me disant 
> > que le port 80 est déjà utilisé.
> >
> > En fait, nginx semble se bloquer lui-même.
> > Je démarre  qui m'affiche :
> > [] Starting nginx: nginxnginx: [emerg] bind() to [::]:80 failed (98: 
> > Address already in use)
> > nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> > nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> > nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> > nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> > nginx: [emerg] still could not bind()
> >
> > Et pendant le démarrage, je tape  qui m'affiche :
> > COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
> > nginx   4342 root6u  IPv4   6332  0t0  TCP *:http (LISTEN)
> >
> > Une fois le démarrage foiré, nginx ne tourne pas et lsof ne me sort plus 
> > rien.
> >
> >
> > Je me suis alors tourné vers tasksel et j'ai installé un web-server.
> > Mais malgré le fait que nginx était déjà installé, apt m'a quand même 
> > installé apache.
> > Là, pas de soucis, la page "It Works" était dispo.
> >
> > Un remove + autoremove plus loin, je me retrouve au même point.
> >
> > La doc' du wiki Debian ne donne pas plus que la liste de fonctions dispos 
> > dans les différents paquets (nginx-light, full, extra).
> >
> > Et le wiki de nginx est parfois indisponible, parfois trop fouillé.
> > Pas de quick start, en fait.
> >
> > Des idées ?  Suggestions ?
> >
> 
> 
> -- 
> Adrien Poupin - Creasixtine
> *cont...@creasixtine.com  / fixe. 09 54
> 14 88 73 / port. 06 76 18 32 36*
> ---


-- 
Jean-Marc 


pgpznlRKqPhek.pgp
Description: PGP signature


Re: config' simplissime de nginx

2013-05-12 Par sujet Adrien Poupin
Salut,
Je pense que tu as déjà un serveur de démarré. Du coup :
# service apache2 stop
# update-rc.d -f apache2 remove
# service nginx start
# update-rc.d -f nginx defaults

Si ce n'est pas apache qui est démarré, c'est peut-être httpd (donc même
chose en replaçant apache2 par httpd).
Normalement ça devrait déjà te faire avancer :-)

Tu veux faire tourner du php sur ton nginx ?

Adrien.


Le 12/05/2013 14:38, Jean-Marc a écrit :
> Salut la liste,
>
> J'aimerai installer un petit serveur web sur mon board ARM.
> J'ai pensé à nginx.
> J'ai donc installé nginx.
> Mais la config' semble vide.
> Et quand je démarre via , j'ai un message me disant que 
> le port 80 est déjà utilisé.
>
> En fait, nginx semble se bloquer lui-même.
> Je démarre  qui m'affiche :
> [] Starting nginx: nginxnginx: [emerg] bind() to [::]:80 failed (98: 
> Address already in use)
> nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
> nginx: [emerg] still could not bind()
>
> Et pendant le démarrage, je tape  qui m'affiche :
> COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
> nginx   4342 root6u  IPv4   6332  0t0  TCP *:http (LISTEN)
>
> Une fois le démarrage foiré, nginx ne tourne pas et lsof ne me sort plus rien.
>
>
> Je me suis alors tourné vers tasksel et j'ai installé un web-server.
> Mais malgré le fait que nginx était déjà installé, apt m'a quand même 
> installé apache.
> Là, pas de soucis, la page "It Works" était dispo.
>
> Un remove + autoremove plus loin, je me retrouve au même point.
>
> La doc' du wiki Debian ne donne pas plus que la liste de fonctions dispos 
> dans les différents paquets (nginx-light, full, extra).
>
> Et le wiki de nginx est parfois indisponible, parfois trop fouillé.
> Pas de quick start, en fait.
>
> Des idées ?  Suggestions ?
>


-- 
Adrien Poupin - Creasixtine
*cont...@creasixtine.com  / fixe. 09 54
14 88 73 / port. 06 76 18 32 36*
---


signature.asc
Description: OpenPGP digital signature


config' simplissime de nginx

2013-05-12 Par sujet Jean-Marc
Salut la liste,

J'aimerai installer un petit serveur web sur mon board ARM.
J'ai pensé à nginx.
J'ai donc installé nginx.
Mais la config' semble vide.
Et quand je démarre via , j'ai un message me disant que le 
port 80 est déjà utilisé.

En fait, nginx semble se bloquer lui-même.
Je démarre  qui m'affiche :
[] Starting nginx: nginxnginx: [emerg] bind() to [::]:80 failed (98: 
Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

Et pendant le démarrage, je tape  qui m'affiche :
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   4342 root6u  IPv4   6332  0t0  TCP *:http (LISTEN)

Une fois le démarrage foiré, nginx ne tourne pas et lsof ne me sort plus rien.


Je me suis alors tourné vers tasksel et j'ai installé un web-server.
Mais malgré le fait que nginx était déjà installé, apt m'a quand même installé 
apache.
Là, pas de soucis, la page "It Works" était dispo.

Un remove + autoremove plus loin, je me retrouve au même point.

La doc' du wiki Debian ne donne pas plus que la liste de fonctions dispos dans 
les différents paquets (nginx-light, full, extra).

Et le wiki de nginx est parfois indisponible, parfois trop fouillé.
Pas de quick start, en fait.

Des idées ?  Suggestions ?

-- 
Jean-Marc 


pgpGeYgU81LVn.pgp
Description: PGP signature