Problème paramétrage HTTP2 sur Nginx

WRInaute passionné
Bonjour,

j'essaie de paramétrer http2 sur un serveur nginx pour le domaine storetoile.fr.

j'ai un certificat et j'ai la config suivante:
Code:
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;


  return 301 https://www.storetoile.fr$request_uri;
  rewrite  ^/toile-pergola-fds.php$  ^/toile-pergola.php permanent;
  error_page 404 /404.php;


  # SSL
  ssl_certificate /etc/ssl/storetoile/2019/storetoile.crot;
  ssl_certificate_key /etc/ssl/storetoile/2019/privatekey.pem;
  ssl_protocols TLSv1.2;
  ssl_prefer_server_ciphers on;

  # Application
  root /var/www/storetoile;
  index index.php;
  try_files $uri $uri/ $uri.html =404;
 
}

server{
listen 80;


  return 301 https://www.storetoile.fr$request_uri;

}

j'ai un plesk ajenti

Si les experts pouvaient m’aiguiller car la je cale :D j'ai essayé pas mal de chose
 
WRInaute accro
Pardon

Le certif. ce 'nest pas ." crot", mais ".crt" ou ".pem".

Je ne comprend pas :

listen 443 ssl http2;
listen [::]:443 ssl http2;

Le listen 443, n'écoute-t-il pas en IPV6 et IPV4 ?

Ne faudrait-il pas :

listen *.443 ssl http2;
listen [::]:443 ssl http2;

IPV4 et IPV6 ...

Amicalement.
 
WRInaute passionné
pour le .crot je serai bien d'accord mais quand je parcours les fichiers c'est bien ce que j'ai et ça semble marcher
 
WRInaute accro
Bonjour ABCWEB

Si c'est avec "systemctl start nginx.service" que çà plante, il devrait indiquer un message pour regarder : "journalctl -exe"

Avant, pour vérifier la config :

"nginx -t" indique si la config a des erreurs.

Amicalement.
 
WRInaute passionné
Bonjour ABCWEB

Si c'est avec "systemctl start nginx.service" que çà plante, il devrait indiquer un message pour regarder : "journalctl -exe"

Avant, pour vérifier la config :

"nginx -t" indique si la config a des erreurs.

Amicalement.

j'ai des warning sur d'autres domaines mais pas d'erreurs sur le domaine en question
 
WRInaute accro
Bonjour ABCWEB

/var/log/nginx/ sous répertoires

/var/log/php8-fpm/ ou autres php

Il y a théoriquement des fichiers *.gz plus d'autres fichiers non compressés.

Les plus récents ne sont pas compressés.

Les éditer et chercher les erreurs.

Si çà se trouve, c'est une simple erreur php qui interrompt des scripts.

Amicalement.
 
WRInaute accro
Et pas de directive "server_name" dans ta config ?

Perso j'ai une config du genre :

Code:
server {
    listen 443 ssl http2;
    server_name eaupotable.info;
    
    ssl_certificate /etc/letsencrypt/live/eaupotable.info/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/eaupotable.info/privkey.pem;

    # root directive should be global
    root   /var/www/eaupotable.info/public/;
    index  index.php;

    # ...
}
 
WRInaute passionné
Et pas de directive "server_name" dans ta config ?

j'ai essayé avec ta méthode
Code:
server {
    listen 443 ssl http2;
    server_name storetoile.fr;
    
    ssl_certificate /etc/ssl/storetoile/2019/storetoile.crot;
      ssl_certificate_key /etc/ssl/storetoile/2019/privatekey.pem;

    root /var/www/storetoile/;
    index  index.php;

}

sans plus de succès
 
WRInaute accro
plutôt :
Code:
server_name www.storetoile.fr

Attention que sans www ça télécharge les fichiers .php !
 
WRInaute accro
nginx -t ça teste la configuration, ça n'applique pas les changements, sous Debian tu dois faire :
Code:
service nginx reload
 
WRInaute accro
Bon

Les scripts php ne sont pas interprétés.

Chercher listen dans /etc/php*/etc => ww.conf

Et dans /etc/nginx config php correspondantes.

Dans mon cas ( socket unix ) :

fastcgi_pass unix:/var/run/php-fpm/php.sock;

Et dans ww.conf :
listen = /var/run/php-fpm/php.sock

Les deux sockets doivent correspondre.
 
WRInaute accro
Pardon

Faut corriger les mime-types, qui ne sont à déclarer que dans /etc/nginx/mime.types

A part çà, indiquer les adresses ip entières dans chaque config de server.

Sous /etc/nginx/sites-available

Regarder sur le net pour la config nginx.

Ton site est accessible.
 
Dernière édition:
WRInaute passionné
c'est une méga faille :
Voir la pièce jointe 1389

NB : c'est pas avec addslashes qu'on échappe les données MySQL, mais avec : https://www.php.net/manual/fr/mysqli.real-escape-string.php
NB 2 : tu as une faille d'injection SQL dans client.php ligne 30.


du coup faut que je remplace les addslashes par des mysqli_real_escape_string($link, $_POST['adresse']) si j'ai bien compris.

ça corrige la faille NB2?

Et la méga faille faut m'expliquer comment t'arrives la ou comment t’empêcher d'y arriver
 
WRInaute accro
Merci mais j'ai ajenti
Oui, il semblerait bien, même si au départ tu parlais de Plesk et ensuite Ajenti. Et en effet, cela n'a rien à voir question gestion de serveur entre les 2, avec Plesk j'avais tout mis en place en une ligne de commande après avoir vérifié que les versions correspondaient.

Bon courage pour la suite !
 
WRInaute passionné
Bon

Les scripts php ne sont pas interprétés.

Chercher listen dans /etc/php*/etc => ww.conf

Et dans /etc/nginx config php correspondantes.

Dans mon cas ( socket unix ) :

fastcgi_pass unix:/var/run/php-fpm/php.sock;

Et dans ww.conf :
listen = /var/run/php-fpm/php.sock

Les deux sockets doivent correspondre.

je touche pas à ce genre de chose je n'y connais absolument rien. Je gère comme je peux avec ajenti mais c'est assez limité. Il va falloir que j'installe un nouveau certificat et je sais pas comment y attaquer
 
WRInaute passionné
Oui, il semblerait bien, même si au départ tu parlais de Plesk et ensuite Ajenti. Et en effet, cela n'a rien à voir question gestion de serveur entre les 2, avec Plesk j'avais tout mis en place en une ligne de commande après avoir vérifié que les versions correspondaient.

Bon courage pour la suite !

j'ai dit plesk par abus de langage je voulais dire panel

Merci^^
 
WRInaute accro
Ben du coup, tu peux t'y intéresser :) Même si c'est une surcouche, c'est super complet pour gérer les serveurs, les abonnements de A à Z. Bon, c'est payant mais cela m'évite bien des tracas au quotidien, comme celui que tu as rencontré ce matin !
 
WRInaute passionné
Ben du coup, tu peux t'y intéresser :) Même si c'est une surcouche, c'est super complet pour gérer les serveurs, les abonnements de A à Z. Bon, c'est payant mais cela m'évite bien des tracas au quotidien, comme celui que tu as rencontré ce matin !

j'ai pas choisi c'était livré avec. Normalement coté serveur j'ai un prestataire mais ils se sont fait racheté 2 fois et maintenant je les trouve pas très compétant. Avant j'avais cpanel qui était très bien aussi
 
WRInaute accro
Pardon

Votre certificat est correct il court jusqu'en 2022.

Celà est prouvé par votre connexion réussie à votre site.

C'est la config nginx qui foire.
 
WRInaute accro
Bonjour ABCWEB

Ton ndd principal n'indique pas les ips.

Il faut mettre les ips :

listen 91.224.231.250:443 ssl http2; ( ipv4 )

listen ipv6:443 ssl http2; ( ipv6 )

D'autre part ton ipv6 ( de storetoile.fr ) n'est pas configurée dans les dns.

Faut vérifier les dns :

Linux :

dig -t a ndd ( ipv4 )

dig -t aaaa ndd ( ipv6 )

Windows : je ne sais pas.
 
WRInaute accro
Bonjour ABCWEB

Pour le deuxième dig, le ANSWER 0 et le IN AAAA sans ip indiquent que l'ipv6 n'est pas configurée.

Si ton hébergeur donne une ipv6, il faut configurer le champ AAAA des dns avec l'ipv6.

Le champ A est correct.

Amicalement.
 
WRInaute passionné
Bonjour ABCWEB

Pour le deuxième dig, le ANSWER 0 et le IN AAAA sans ip indiquent que l'ipv6 n'est pas configurée.

Si ton hébergeur donne une ipv6, il faut configurer le champ AAAA des dns avec l'ipv6.

Le champ A est correct.

Amicalement.

la j'ai pas la main la dessus je vais demander
 
WRInaute passionné
Non on px tjs télécharger tes scripts PHP et il y a tjs une faille à client.php ligne 30 ($_POST['civil']).

j'ai corrigé pour le fichier client. Pour le téléchargement des fichier php va falloir que tu me dise comment tu fais soit pour bloquer ça soit pour le faire je sais même pas comment tester si ce que je fais est efficace.
 
WRInaute accro
Bonjour ABCWEB

Logiquement les fichiers php sont interprétables sur le serveur, et envoient du html.

Théoriquement, il n'y a pas besoin de bloquer des fichiers php, sauf ceux qui ne doivent pas être lancés.
 
WRInaute passionné
Bonjour ABCWEB

Logiquement les fichiers php sont interprétables sur le serveur, et envoient du html.

Théoriquement, il n'y a pas besoin de bloquer des fichiers php, sauf ceux qui ne doivent pas être lancés.
Il faut que je redirige les fichiers php vers une url en .html?
 
WRInaute accro
Pardon

Tes sites fonctionnent ?

Ils sont visibles sur ton browser ?

Je laisse à d'autres les explications.

Il faudrait que tu dises les problèmes résiduels à résoudre.
 
WRInaute passionné
Pardon

Tes sites fonctionnent ?

Ils sont visibles sur ton browser ?

Je laisse à d'autres les explications.

Il faudrait que tu dises les problèmes résiduels à résoudre.

Oui ils fonctionnent très bien. J'ai des commandes et des appels donc pas de soucis apparemment c'est pour ça que je comprends d’où vient le problème.
 
WRInaute accro
Bonjour cthtierry

Moi en https la page s'affiche correctement.

Sous Google Chrome et Linux Fedora v. 34

Version 96.0.4664.45 (Build officiel) (64 bits)
 
WRInaute accro
Sous Chrome aussi d'ailleurs ! Bref, sur tous les navigateurs. La dernière fois que j'ai eu une couille comme cela, c'était un service qui n'était pas démarré. Bon courage pour la suite.

Au passage, la faille de @spout semble corrigée :)
 
WRInaute passionné
Sous Chrome aussi d'ailleurs ! Bref, sur tous les navigateurs. La dernière fois que j'ai eu une couille comme cela, c'était un service qui n'était pas démarré. Bon courage pour la suite.

Au passage, la faille de @spout semble corrigée :)

j'arrive pas à reproduire l'erreur sous chrome et sous edge il me semble avoir corrigé car je n'arrive pas à reproduire le téléchargement. Si tu arrives à télécharger un script dis moi ta manip que je vois comment le reproduire.

Merci :)
 
WRInaute accro
Pardon

C'est peut-être que le certificat est trop moderne, et pas accepté par certains navigateurs.

Qui est l"autorité de ce certificat ?

LetsEncrypt ?

Amicalement
 
WRInaute passionné
Bonjour ABCWEB

LetsEncrypt c'est gratuit.

Amicalement.

Je connais pas assez pour en parler mais il me faut un certificat qui tourne sur plusieurs sous domaine et il me faut des certificats avec des assurances.

Après c'est pas le prix que ça coute qui va mettre l'entreprise en péril :D
 
Discussions similaires
Haut