J-Pierre Morfin 🦊 utilise m.g3l.org. Vous pouvez le/la suivre et interagir si vous possédez un compte quelque part dans le "fediverse". Si ce n’est pas le cas, vous pouvez en créer un ici.

Les joies du code merdique avec des URL générées qui imposent un proto et un numéro de port déduits par des conditions foireuses, c'est génial dans des env avec du SSL offloading donc un backend en HTTP

Si SERVER_PORT est défini, $port1 = SERVER_PORT sinon $porr1 = 80 (backend HTTP donc 80 dans les 2 cas)
Protocole = http ou https?
Cas http
$port2 = rien si $port1= 80 sinon = :$port1
Cas https
$port2 = rien si $por1 = 433 sinon = :$port1

Installqtion depuis frontend donc URL en https => 2 cas contradictoires vrais en même temps… Fucking genius \o/

Résultat, plutôt que de faire des URL relatives, ça te génère des URL constituées d'un append entre
- Un protocole chopé sur l'URL d'un frontend HTTPS
- Un domainname qui peut eventuellement différé entre le backend et le front-end
- Le numéro de port choppé depuis un SERVER_PORT choppé sur le backend en HTTP (donc 80, et s'il pas défini, 80 quand même)

=> https://ndd:80 🤦

Evidemment, SetEnv SERVER_PORT 443 dans .htaccess (à défaut d'avoir accès à MesPutainsDeVirtualHosts.conf) est ignoré : print_r $_SERVER contient toujours « 80 » pour le SERVER_PORT sinon c'est moins drôle…

ARRETEZ DE FOUTRE DES URL ABSOLUES LÀ OU IL EN PAS BESOIN – ENCORE MOINS AVEC NUMEROS DE PORTS – DANS LES URL QUE VOUS GÉNÉREZ!!!

J-Pierre Morfin 🦊 @jpfox

@devnull
La bonne pratique sinon, c'est le triple slash
///domaine.tld/path
Ça utilise le même protocole que la page où se trouve le lien

@charly Il faut dire ça aux devs qui developés cette bouse… :P
Le protocole est correct, la page est bien chargée en HTTPS, donc //domain.tld sera en HTTPS (front-end HTTPS), c'est le numéro de port collé aux URL générées lors de l'installation, qui est foireux car récupéré sur une variable d'environnement Apache du backend en HTTP
@jpfox

@devnull @charly @jpfox Et il a une explication, ce dév. ? Parce que bon, sauf contexte technique tordu, j'crois que c'est plus du temps perdu qu'autre chose de vouloir forcer de l'absolu, port compris. -_-

@meduz @charly @jpfox J'en sais rien, c'est pas un outil developpé en interne… Je ferai un ticket mais vula réactivité des devs de cette appli, ou leurs manie à balancie « chez moi ça marche, faut faire comme ça donc c'est pas un bug » alors que ça correspond pas au cas de mes tickets précédents… je compte pas trop dessus

@charly @meduz @jpfox Le fameux « Chez moi ça marche, pas besoin de plus de tests »

@jpfox Double slash, triple.slash cherche des fichiers dans le FS d'un système GNU/Linux, BSD, UNIX… qui héberge la page du script qui contient le lien
C'est une bonne pratique mais a ne résout pas le problème : Le.protocole est correcte, c'est le.poire qui est foireux