teymour/attestation-covid19

The requested URL was not found on this server.

Closed this issue · 18 comments

Hello, super intéressé par ton projet, j'essaye de l'installer directement sur un Cloud Ubuntu / Apache2, après avoir suivi tes consignes je n'arrive pas a accéder au fichier en tapant http://IP_DU_CLOUD/cgi-bin/attestation-covid19.sh ...

J'ai la sublime erreur "Not Found", je pense que ca doit etre tout con, mais vu que je débute dans le milieu des serveurs je suis paumé à chercher ca pendant des heures :/

Thanks si t'as du temps pour remettre sur le bon chemin !

Est ce que la conf cgi-bin est bien activée ?

Pour le faire :

sudo a2enconf serve-cgi-bin

Ça dit Conf serve-cgi-bin already enabled si c'est le cas.

Si non, ça va l'activer. Il faudra ensuite redémarrer apache :

sudo service apache2 restart

Merci pour te réponse, en effet je viens de check et je te confirme le Conf serve-cgi-bin already enabled

J'ai également restart apache2 et j'obtiens directement une erreur de redemarrage Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details

`Oct 30 16:56:14 localhost systemd[1]: Starting The Apache HTTP Server...

Oct 30 16:56:14 localhost apachectl[9051]: apache2: Syntax error on line 11 of /etc/apache2/apache2.conf: Cannot load modules/mod_c>

Oct 30 16:56:14 localhost apachectl[9039]: Action 'start' failed.

Oct 30 16:56:14 localhost apachectl[9039]: The Apache error log may have more information.

Oct 30 16:56:14 localhost systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE

Oct 30 16:56:14 localhost systemd[1]: apache2.service: Failed with result 'exit-code'.

Oct 30 16:56:14 localhost systemd[1]: Failed to start The Apache HTTP Server.`

Il y a un problème à la ligne 11 de /etc/apache2/apache2.conf. En général, on n'intervient pas sur ce fichier. Si tu as installé apache2 pour l'occasion, je te conseillerai de revenir à la version de la distrib pour ce fichier.

Merci pour ton aide, bon en effet il y avait un problème avec apache2, j'ai tout réinstaller et également pour Ubuntu.
Je me retrouve avec un Cloud qui à une IP auquel je peux accéder depuis mon navigateur web, dès que je rentre l'IP j'accède bien à la page default d'Apache.

J'ai suivi ton tuto pour le lien symbolique, tout fonctionne au top la dessus, mais du coup quand j’accède à http://IP_DU_CLOUD/cgi-bin/attestation-covid19.sh toujours la meme erreur "Not Found" ...

Si tu penses que il y a d'autres choses à config dans le serveur, si tu as un tuto a me donner a suivre ce serait très fort :)
Sinon je te confirme que sudo a2enconf serve-cgi-bin réponds bien Conf serve-cgi-bin already enabled et que sudo service apache2 restart redémarre correctement Apache2..

Tu me donnes l'occasion de réviser mon apache. De ce que je lis dans la conf de serve-cgi-bin, il faut que les modules alias et cgi soient activés.

Du coup, pour vérifier et les activer si ce n'est pas le cas :

sudo a2enmod alias
sudo a2enmod cgi

Trop fort ! La commande sudo a2enmod cgi a parfaitement fonctionné de mon coté j'ai redémarré Apache et je n'ai plus de "Not Found" Mais un accès Forbidden ... J'ai tenté le coup du chmod 777, en restart derriere mais ca n'y change rien .. Quel bordel :/

Je te laisse meme l'erreur ici : http://mondomaine.fr/cgi-bin/attestation-covid19.sh

Euh... chmod 777 c'est INTERDIT !!! :) (c'est le meilleur pour te faire deface)

Deux choses à vérifier :

  • /usr/lib/cgi-bin/attestation-covid19.sh et le fichier source /chemin/vers/attestation-covid19/cgi-bin/attestation doivent avoir le même owner (myuser ici) :

     ls -l /usr/lib/cgi-bin/attestation-covid19.sh /chemin/vers/attestation-covid19/cgi-bin/attestation
     
     lrwxrwxrwx 1 myuser   root        50 Apr 10  2020 /usr/lib/cgi-bin/attestation-covid19.sh -> /chemin/vers/attestation-covid19/cgi-bin/attestation
     -rwxrwxr-x 1 myuser mygroup 1456 Apr 10  2020 /chemin/vers/attestation-covid19/cgi-bin/attestation
    
  • l'utilisateur dédié à apache2 (www-data) a les droits d'accéder à /chemin/vers/attestation-covid19/cgi-bin/attestation :

      sudo -u www-data ls -l /chemin/vers/attestation-covid19/cgi-bin/attestation
    

Si ce n'est pas le cas, remonte le chemin pour identifier où se trouver le problème de droit (sans doute un x qui manque dans un répertoire).

N'utilise pas chmod 777, mais par exemple :

sudo chmod o+x /chemin/vers/attestation-covid19

Oh trop fort !
Tu as bien raison en effet avec un ls -l je te confirme que l'own du premier est "root" et le deuxieme www-data, Ca doit etre un probleme de droit, j'ai pas encore trouver comment régler ca mais ca doit plus etre très compliqué...

Suite à ces retours, j'ai mis à jour la partie cgi-bin dans la doc : 42f718b

N'hésite pas à me tenir au courant.

C'est en train de me rendre dingue je crois..
J'ai beau repeter ces commandes : sudo ln -s /attestation-covid19/cgi-bin/attestation attestation-covid19.sh sudo chown www-data /attestation-covid19/cgi-bin/attestation attestation-covid19.sh pour donner les bon droits

A chaque fois que je verifie les droits avec ls -l j'en ai toujours un en root et pas www-data, ca ma l'air si simple et pourtant ca me rend dingue ahah

J'ai ca a chaque fois sur ls -l : "-rwxr-xr-x 1 www-data root 1456 Oct 31 00:00 /attestation-covid19/cgi-bin/attestation
lrwxrwxrwx 1 root root 40 Oct 31 00:07 /usr/lib/cgi-bin/attestation-covid19.sh -> /attestation-covid19/cgi-bin/attestation"

Trop bien!! Apres des heures et des heures de test, j'ai fini par simplement indiquer le path du dossier et enlever le symbolik link, et la ca fonctionne nickel ! Encore merci pour ton aide et pour ce projet, et je me demandais d'ailleurs, a chaque attestation généré, l'heure de création est d'une heure pile avant, pas moyen de mettre genre 36 min ?

Bon, désolé que la version ln -s ne fonctionne pas pour toi.

J'ai implémenté ta suggestion de décalage des date entre fait et création : 5f54548

Merci d'avoir partagé ton problème (et la solution) et pour cette idée !

Hello, désolé de t'embêter a nouveau, ton projet est ultra utile pour moi, mais je n'arrive toujours pas a régler l'heure des attestations, 15 minutes avant l'heure actuelle a la place de 1 heure, est-ce faisable de paramétrer ca pour tout les fichiers de config ? Ou faut il directement le modifier dans les config.inc ? Si tu as une ligne ou quelque chose à rajouter pour générer tout ca a -15 minutes ce serait exceptionnel, parce une heure c'est parfaitement le temps limite pour les balades à 1 km de chez soi... BIG thanks!

Pas de pb, avec plaisir :)

Le commit a3e836a te montre comment le faire dans ton fichier de configuration config/config.inc (ou consort)

J'ai bien checké de mon coté et rien, impossible de modifier la date de creation en modifiant ce que tu demandes :/

Sil faut modifier le fichier de configuration utilisé (config/config.inc ou autre config/config_*inc)

Oh yes, quel con en effet il faut ajouter ces minutes au -1 heures, j'ai pas pris le temps de regarder ca, thanks A LOT !