Mein privater Discourse-Server funktioniert und ist über den Browser und die iOS-Mobil-App zugänglich.
Allerdings kann Discourse Hub den Server unter Android nicht finden. (Es kann andere Server wie meta.discourse.org finden.)
Irgendeine Idee, warum dies fehlschlägt? Könnte es sein, dass die Android-Mobil-App einen anderen Crawler-Agent verwendet, um auf den Server zuzugreifen, als die iOS-Version? Oder ein anderer Grund?
Am hilfreichsten, @pmusaraj! Vielen Dank. Zur Nachverfolgung:
1- Die GET-Anfrage erhält eine Antwort, aber die HEAD-Anweisung wirft einen Fehler „Wert ist ungültig“. (Dies gilt auch für meta.discourse.org, aber beide mobilen Apps können eine Verbindung zu dieser Instanz herstellen.) Wie ändere ich den Server, um eine ordnungsgemäße Antwort auf die HEAD-Anfrage zu liefern?
2- Warum besteht die iOS-Version diese Tests erfolgreich und stellt eine Verbindung zu meinem Server her?
Für das, was es wert ist, ein Freund von mir hat dies mit einem Standard-Android mit demselben Ergebnis getestet. Mein Gerät ist ein Pixel 8a mit der neuesten Version von GrapheneOS.
Könnte dies eine neue Cypher-Inkompatibilität sein, ähnlich der, auf die Sie sich von 2017 bezogen haben?
Wir haben die Crawler überprüft. Mein Server hat viele Crawler blockiert, und es scheint, dass einer von ihnen die Verbindung der mobilen App verhindert hat. Nach dem Zurücksetzen auf die Werkseinstellungen konnte die App eine Verbindung herstellen.
Dann habe ich OkHttp als einzigen erlaubten Crawler hinzugefügt, und die mobile App konnte sich immer noch verbinden. Krise abgewendet.
Vielen Dank an @pmusaraj für die Überprüfung des Android-App-Codes und die Erarbeitung dieser Lösung.