GeotrekCE / Geotrek-rando

Geotrek public trekking website
http://geotrek.fr
27 stars 18 forks source link

Problème signalement GTR v2.30 & GTA v2.51 #819

Closed JeanLenormand closed 3 years ago

JeanLenormand commented 3 years ago

J'ai le message suivant lorsque je veux envoyer un signalement sur GTR : "Le message n'a pu être enregistré. Veuillez nous excuser pour ce désagrément. Nos équipes ont été prévenues et analysent le problème !"

La console de mon navigateur me renvoie le message d'erreur suivant : from origin 'my-url' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Les messages d'erreurs ne sont pas envoyé côté GTA dans le module Signalements.

J'ai suivi les issues suivantes : https://github.com/GeotrekCE/Geotrek-rando/issues/731

Que ce soit dans le fichier de conf nginx de GTA /opt/geotrek-admin/var/conf/nginx.conf.in où j'ai bien : add_header Access-Control-Allow-Origin ${RANDO_SERVER_NAME};

OU après avoir lancé le dpkg et renseigné * dans le champ Geotrek-rando server name(s) Geotrek-rando

J'ai bien dans /opt/geotrek-admin/var/conf/nginx.conf add_header Access-Control-Allow-Origin *;

La conf email du fichier /opt/geotrek-admin/var/conf/custom.py a été testé avec succès : sudo geotrek test_managers_emails

Les applications GTR (version 2.30.0) et GTA (version 2.51.2) sont chacune sur un serveur distinct.

Quelqu'un aurait-il des pistes ? Merci !

thomasmagninfeysot commented 3 years ago

Bonjour Jean, J'ai eu ce même problème il y a peu et plusieurs paramétrages m'ont permis d'y arriver, après je ne sais pas expliquer le pourquoi du comment.... :

JeanLenormand commented 3 years ago

Bonjour Thomas, merci pour ton retour. Malheureusement ca n'a pas fonctionné :

Je reviens au même problème :/

gutard commented 3 years ago
~$ curl -I https://viacolumbani.com
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Tue, 30 Mar 2021 14:01:06 GMT
Content-Type: text/html
Content-Length: 2040
Last-Modified: Thu, 26 Nov 2020 08:27:26 GMT
Connection: keep-alive
ETag: "5fbf66ee-7f8"
Expires: Tue, 30 Mar 2021 15:01:06 GMT
Cache-Control: max-age=3600
Accept-Ranges: bytes

Je ne vois pas le header Access-Control-Allow-Origin. Tu as essayé de redémarrer le serveur nginx ? Le dpkg-reconfigure fait en principe un reload mais peut-être qu'il faut faire un restart complet.

Au passage, il est préférable de mettre le vrai nom de domaine de Geotrek-admin plutôt que . Si ce mécanisme de sécurité existe, c'est pour de bonnes raisons et il est préférable de l'utiliser plutôt que de le neutraliser avec .

JeanLenormand commented 3 years ago

Merci Gael, mais voici ce que me renvoie ces commandes après modif du header Access-... et un sudo systemctl restart nginx sur chaque serveur :

$ curl -I https://myurl.com HTTP/1.1 200 OK Server: nginx/1.14.0 (Ubuntu) Date: Tue, 30 Mar 2021 14:26:15 GMT Content-Type: text/html Content-Length: 2040 Last-Modified: Thu, 26 Nov 2020 08:27:26 GMT Connection: keep-alive ETag: "5fbf66ee-7f8" Expires: Tue, 30 Mar 2021 15:26:15 GMT Cache-Control: max-age=3600 Access-Control-Allow-Origin: https://myadmin.com/ Accept-Ranges: bytes

$ curl -I https://myadmin.com/ HTTP/1.1 302 Found Server: nginx/1.18.0 (Ubuntu) Date: Tue, 30 Mar 2021 14:26:55 GMT Content-Type: text/html; charset=utf-8 Content-Length: 0 Connection: close Location: /path/list/ X-Frame-Options: DENY Vary: Accept-Language, Cookie Content-Language: fr Access-Control-Allow-Origin: https://myurl.com/

++ pour info les signalements ne fonctionnent plus depuis que j'ai du changer de serveur suite aux problèmes de barbecue chez OVH. Je ne sais pas si ça peut être lié ...

thomasmagninfeysot commented 3 years ago

@gutard ça ne fonctionne pas si je mets mon G.admin dans Access-Control-Allow-Origin d'où le fait d'avoir renseigné *

gutard commented 3 years ago

@JeanLenormand et donc ? Ça ne marche toujours pas ? Par ce que maintenant elle y est bien l'en-tête.

JeanLenormand commented 3 years ago

Non toujours rien ... Les serveurs nginx ont aussi bien été redémarrés avec : sudo systemctl restart nginx

gutard commented 3 years ago

Le problème de CORS semble résolu mais il y a un autre problème. L'admin renvoie une erreur 404 quand rando poste le signalement. Essaye d'enlever le slash final dans le setting BACKOFFICE_URL.

JeanLenormand commented 3 years ago

En effet, pas de slash à la fin des Urls ! Problème résolu. Merci @gutard !

thomasmagninfeysot commented 3 years ago

Je tester sans / alors ;-) !