Mon serveur Discourse privé fonctionne et est accessible via le navigateur et l’application mobile iOS.
Cependant, sur Android, Discourse Hub ne parvient pas à trouver le serveur. (Il peut trouver d’autres serveurs comme meta.discourse.org.)
Une idée de la raison pour laquelle cela échoue ? Se pourrait-il que l’application mobile Android utilise un agent d’exploration différent pour accéder au serveur que la version iOS ? Ou une autre raison ?
Le plus utile, @pmusaraj ! Merci. Pour faire suite :
1- La requête GET reçoit une réponse, mais l’instruction HEAD renvoie une erreur « la valeur n’est pas valide ». (Ceci est également vrai pour meta.discourse.org, pourtant les deux applications mobiles peuvent se connecter à cette instance.) Comment modifier le serveur pour produire une réponse appropriée à la requête HEAD ?
2- Pourquoi la version iOS réussit-elle ces tests et se connecte-t-elle à mon serveur ?
Pour ce que ça vaut, un ami a testé ceci en utilisant un Android standard avec le même résultat. Mon appareil est un Pixel 8a exécutant la dernière version de GrapheneOS.
Pourrait-il s’agir d’une nouvelle incompatibilité de chiffrement similaire à celle à laquelle vous avez fait référence en 2017 ?
Nous avons vérifié les robots d’exploration. Mon serveur a bloqué de nombreux robots d’exploration et il semble que l’un d’eux empêchait l’application mobile de se connecter. Après avoir réinitialisé les paramètres d’usine, l’application a pu se connecter.
Ensuite, j’ai ajouté okhttp comme seul robot d’exploration autorisé et l’application mobile a toujours pu se connecter. Crise évitée.
Merci à @pmusaraj d’avoir vérifié le code de l’application Android et d’avoir trouvé cette solution.