Add: articles nginx
parent
f7ce5fc935
commit
13cd6ddb88
|
@ -0,0 +1,41 @@
|
|||
---
|
||||
title: "Nginx : Erreur 403 Forbidden"
|
||||
date: 2020-08-22T16:45:32+02:00
|
||||
description: "Comment résoudre l'erreur 403 - Error 403: Forbidden - pour nginx"
|
||||
draft: false
|
||||
tags: ["nginx", "Erreur", "403", "astuce"]
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Il peut y avoir plusieurs raisons pour laquelle nginx affiche une erreur 403.
|
||||
Le serveur comprend la requête mais refuse de répondre au client web.
|
||||
|
||||
Les raisons :
|
||||
|
||||
1. Une mauvaise configuration du chemin vers le fichier de configuration
|
||||
du contexte server.
|
||||
|
||||
2. Un problème de droits sur le système de fichiers de la racine web, généralement
|
||||
`/var/www/`.
|
||||
|
||||
Par exemple, quelques lignes de log d'erreur :
|
||||
|
||||
`2020/08/22 10:50:18 [error] 77863#0: *2 directory index of "/htdocs/" is forbidden, (…)` <br>
|
||||
`2020/08/22 10:52:21 [error] 890#0: *1 open() "/htdocs/robots.txt" failed (2: No such file or directory), (…)` <br>
|
||||
|
||||
**Vérifiez :**
|
||||
|
||||
1. Les écritures des chemins web. Exemple dans le fichier de configuration
|
||||
principal de nginx, les `include` vers `sites-enabled` sont ils corrects ? <br>
|
||||
Il suffit d'une erreur de typographie…
|
||||
|
||||
2. La racine web doit avoir, normalement pour droits utilisateurs, les noms
|
||||
utilisateur et groupe web… `www-data:www-data`, ou `www:www` <br>
|
||||
*sauf cas particulier, tel sous OpenBSD `root:daemon`* <br>
|
||||
|
||||
3. Les droits systèmes devraient être de type `0755`.
|
||||
|
||||
Une fois la situation rétablie, redémarrer/recharger nginx.
|
||||
|
||||
---
|
|
@ -1,24 +1,24 @@
|
|||
---
|
||||
title: "Nginx : Erreur 404 ; failed (13: Permission denied)"
|
||||
date: 2017-07-27T07:11:48+02:00
|
||||
description: "Comment résoudre l'erreur 404 - error404 - liée à des problèmes de droits sur répertoires et fichiers pour nginx"
|
||||
description: "Comment résoudre l'erreur 404 - Error 404 - liée à des problèmes de droits sur répertoires et fichiers pour nginx"
|
||||
draft: false
|
||||
tags: ["nginx", "Erreur", "404", "astuce"]
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Quand les logs du server web nginx vous avertissent de ce message :
|
||||
Vous avez un message **Error 404**, sur une des pages visitées.
|
||||
|
||||
`2016/02/13 11:35:52 [crit] 995#0: *48 open() "/srv/www/site.web/www/" failed (13: Permission denied), client: 192.168.7.4, server: site.web, request: "GET / HTTP/1.1", host: "site.web"`
|
||||
Et les logs du server web nginx vous avertissent de ce message :
|
||||
|
||||
cela génère une fameuse "<span lang="en">Error 404</span>" !
|
||||
`2016/02/13 11:35:52 [crit] 995#0: *48 open() "/srv/www/site.web/www/" failed (13: Permission denied), (…)`
|
||||
|
||||
**Modifiez les droits en écriture à la racine de votre site !**
|
||||
|
||||
Par exemple :
|
||||
|
||||
`chmod 0705 /srv/www/site.web/www`
|
||||
`# chmod 0705 /srv/www/site.web/www`
|
||||
|
||||
Même pas besoin de redémarrer nginx !
|
||||
|
||||
|
|
|
@ -1,15 +1,23 @@
|
|||
---
|
||||
title: "Nginx : Erreur 502 Gateway"
|
||||
title: "Nginx : Erreur 502 (Bad Gateway)"
|
||||
date: 2017-07-23T22:39:58+02:00
|
||||
description: "Comment résoudre cette erreur - error502 - de passerelle sous nginx"
|
||||
description: "Comment résoudre cette erreur - Error 502: Bad Gateway - de passerelle sous nginx"
|
||||
draft: false
|
||||
tags: ["nginx", "Erreur", "502", "astuce"]
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Vérifiez vos écritures dans vos fichiers de configuration nginx, celles
|
||||
liées à php, voire php-fpm... qu'elles soient exactement pareilles !
|
||||
Le serveur web nginx affiche une "belle page blanche" avec la mention
|
||||
**Error 502: Bad Gateway** !
|
||||
|
||||
Vérifiez :
|
||||
|
||||
1. que le service php-fpm soit démarré ! <br> *C'est idiot, en soit,
|
||||
mais si le service n'est pas démarré, la connexion avec le serveur ne
|
||||
se fera pas, et provoquera l'erreur 502*.
|
||||
2. vos écritures dans vos fichiers de configuration nginx, celles
|
||||
liées à php, voire php-fpm… qu'elles soient exactement pareilles !
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -24,7 +32,7 @@ Les fichiers de configuration sont :
|
|||
|
||||
{{< code "web-nginx-error502-config-location-php" nginx >}}
|
||||
|
||||
* vérifier aussi votre déclaration liée à la configuration `status`, si nécessaire...
|
||||
* vérifier aussi votre déclaration liée à la configuration `status`, si nécessaire…
|
||||
|
||||
{{< code "web-nginx-error502-config-location-status" nginx >}}
|
||||
|
||||
|
@ -43,10 +51,10 @@ Les fichiers de configuration sont :
|
|||
|
||||
Les déclarations `listen.owner` et `listen.group` sont impérativement liées
|
||||
à l'utilisateur et au groupe du service nginx, généralement `www-data`. <br>
|
||||
À changer, selon votre configuration...
|
||||
À changer, selon votre configuration…
|
||||
|
||||
---
|
||||
|
||||
Puis, redémarrez vos serveurs nginx, et php(x?)-fpm... les deux !
|
||||
Puis, redémarrez vos serveurs nginx, et php(x?)-fpm… les deux !
|
||||
|
||||
---
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
---
|
||||
title: "Nginx : Erreur 504 Gateway Timeout"
|
||||
date: 2020-08-22T17:18:25+02:00
|
||||
description: "Comment résoudre cette erreur - Error 504: Gateway Timeout - de passerelle/proxy (PHP, FastCGI) sous nginx"
|
||||
draft: false
|
||||
tags: ["nginx", "Erreur", "504", "astuce"]
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Le serveur web nginx affiche une "belle page blanche" avec la mention
|
||||
**Error 504: Gateway timeout** !
|
||||
|
||||
Cette erreur indique que le serveur web nginx agit comme une passerelle et
|
||||
ne peut délivrer le contenu. Le serveur ne peut traiter dans un temps
|
||||
imparti la requête demandée, la connexion est alors fermée.
|
||||
|
||||
Il peut y avoir plusieurs raisons, un élément réseau défectueux, mais aussi
|
||||
un des paramètres suivants mal configurés :
|
||||
|
||||
Si vous utilisez PHP-FPM, vérifiez les écritures des directives :
|
||||
* `fastcgi_*_timeout`
|
||||
* `proxy_*_timeout`
|
||||
* `send_timeout`
|
||||
|
||||
Par défaut, toutes ces directives sont de 60 secondes. <br>
|
||||
Des valeurs, en temps de secondes, trop basses impactent le serveur nginx
|
||||
et lui empêchent de délivrer la requête…
|
||||
|
||||
Exemple, augmentez dans votre contexte `http` :
|
||||
|
||||
`proxy_connect_timeout 600;` <br>
|
||||
`proxy_read_timeout 600;` <br>
|
||||
`proxy_send_timeout 600;` <br>
|
||||
|
||||
`send_timeout 600;` <br>
|
||||
|
||||
Et, concernant le contexte `location` lié à PHP, ajoutez, par exemple :
|
||||
|
||||
`fastcgi_connect_timeout 330;` <br>
|
||||
`fastcgi_read_timeout 330;` <br>
|
||||
`fastcgi_send_timeout 330;` <br>
|
||||
|
||||
Ceci étant fait, redémarrez le serveur !
|
||||
|
||||
---
|
||||
|
||||
## Documentations
|
||||
|
||||
* https://nginx.org/en/docs/http/ngx_http_core_module.html#send_timeout
|
||||
* https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_connect_timeout
|
||||
* https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_read_timeout
|
||||
* https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_send_timeout
|
||||
* https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_connect_timeout
|
||||
* https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_read_timeout
|
||||
* https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_send_timeout
|
||||
|
||||
---
|
Loading…
Reference in New Issue