Ja, wir haben diese globale Einstellung, die Sie aktivieren können, indem Sie die Umgebungsvariable DISCOURSE_REDIRECT_AVATAR_REQUESTS=true setzen.
Dann werden Avatar-Anfragen statt über ein Proxy mit einer 302-Umleitung zum Dateispeicher bedient.
An sich… ist das keine gute Idee. Das bedeutet, dass Browser für jeden Avatar zwei vollständige HTTP-Roundtrips machen müssen. Es mag also Ihr Problem mit dem “Hotlinking-Schutz” lösen… aber ich würde Ihnen nicht empfehlen, es zu aktivieren. Es wird die Erfahrung für Ihre Benutzer verschlechtern.
Wir verwenden die Einstellung auf unserem Discourse.org-Hosting. Aber wir ergänzen sie mit einer Lambda-Funktion, die auf unserem Cloudfront CDN läuft. Sie erkennt die 302 und führt das Proxying selbst durch. Im Wesentlichen: Wir verlagern das Proxying von unseren Anwendungsservern auf das CDN.
Was die allgemeinere Frage betrifft, ob wir Avatare so ändern können, dass sie direkt auf das Asset verlinken. Das ist knifflig, da Avatar-URLs in allen historischen Beiträgen (z. B. Zitaten) eingebettet sind. Die dynamischen /user-avatar/-URLs ermöglichen es uns, diese auch dann funktionsfähig zu halten, wenn ein Benutzer seinen Avatar ändert. Ich fürchte, wir haben keine Pläne, dieses System zu ändern.
Wenn es eine einfache, risikoarme Möglichkeit gibt, das bestehende Proxying für Ihren Anwendungsfall funktionsfähig zu machen (z. B. eine globale Einstellung hinzufügen, die eine bestimmte HTTP-Kopfzeile in Avatar-Proxy-Anfragen einfügt), dann könnten wir die Annahme eines PR für die Änderung in Betracht ziehen.