dbarzin / mercator

Mapping the information system / Cartographie du système d'information

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Problème "contenu mixte actif" & "requête multiorigines"

etienne-64 opened this issue · comments

Bonjour,

Après migration, problème de blocages avec Firefox (notamment login) dû à des problèmes de "contenu mixte actif" & "requête multiorigines"

image

Je n'ai fait aucun changement de configuration côté Apache. L'application de fonctionne correctement qu'en http.

Ai-je râté quelque chose au niveau de la config ?

Merci d'avance pour les pistes.

Je me suis peut-être mal exprimé. La bascule auto vers https est en place depuis le début, mais en https j'obtiens ce qui est contenu dans la capture et qui provoquent des dysfonctionnements (bloquage chargement styles et scripts).
Je suis donc pour le moment obligé de revenir en http pour utiliser Mercator.

J'avais bien compris. Voici une explication plus complète :

Il doit également être possible de le faire plus simplement via la variable APP_URL du fichier .env

Je pense avoir presque "tout essayé" ... APP_URL sans résultat ... Je sèche. J'y reviendrai plus tard.
Merci pour les pistes.

J'ai refait une installation manuelle complète avec données de l'install sur vps. J'ai généré le certificat avec certbot ...
image

Je ne peux pas être le seul ;)

Chez moi on a une rewrite rule.

A quelle niveau ? Config Apache ? .htaccess ?

Par défaut Let's Encrypt génère :

RewriteEngine on
RewriteCond %{SERVER_NAME} =mercator.mon-site.ovh
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

Je n'ai jamais été confronté à ce problème. Si tu peux me partager les config. , ça devrait m'aider .

On a un firewall applicatif qui gère cela.
Le module rewrite Apache est-il chargé ?

Le serveur qui héberge mercator héberge d'autres apps servies en https (par ex. Zabbix)

sudo apachectl -M
Loaded Modules:
...
 proxy_fcgi_module (shared)
...
 rewrite_module (shared)
 setenvif_module (shared)
 socache_shmcb_module (shared)
 ssl_module (shared)
 status_module (shared)

Essaye de mettre dans le fichier .env :

APP_ENV=production

Après changement, purge et redémarrages divers, pas de changement.

Une configuration a été ajoutée pour forcer http -> https lorsque APP_ENV=production.
Testé, cela fonctionne. La config Apache2 utilisée :

<VirtualHost *:80>
   ServerName mercator.mycompany.com
   Redirect permanent / https://mercator.mycompany.com/
</VirtualHost>

<VirtualHost _default_:443>
  ServerName mercator.mycompany.com
  DocumentRoot /var/www/mercator/public
  <Directory /var/www/mercator/public>
    AllowOverride All
    allow from all
    Options +Indexes
  </Directory>
  SSLEngine On
  SSLCertificateFile /etc/apache2/certs/mercator.mycompany.com.crt
  SSLCertificateKeyFile /etc/apache2/certs/mercator.mycompany.com.key 
</VirtualHost>

Merci pour le suivi.
Ça fonctionne mais je dois désactiver la protection "mixed content" de Firefox.
image

Ce problème n'est pas présent lors de mes tests.
As-tu la dernière version du code ? Il a été modifié aujourd'hui.
As-tu positionné la variable APP_ENV=production dans le fichier .env ?

Oui. J'ai procédé à des installations de "zero" avec la dernière version (avec mes données comme avec les données de tests fournies sur le repository), sur deux serveurs distincts.

Je vais faire une réinstallation complète sur une VM (OS + apps) pour éliminer tout problème de configuration d'Apache ou autres.
Pour infos, je suis sur Debian 11 + apache 2.4 + php8.1-fpm .

Commence par faire un git pull sur mercator. Le reste ne devrait pas avoir d'impact.

Effectivement, j'ai vu passé quelques nouvelles mises à jour ... retour à la normale.
Merci.