meine Website wird in China gehostet. Wie ihr wisst, müssen alle chinesischen Websites eine Lizenz bei der Regierung registrieren, weshalb alle chinesischen Websites unter staatlicher Aufsicht stehen.
Jemand hat kürzlich meinem CDN-Anbieter, Qiniu (ebenfalls ein chinesisches Unternehmen), gemeldet, dass einige Bilder auf meiner Website illegal seien. Mein CDN-Anbieter teilte mir mit, ich solle diese Bilder löschen und den „URL-Cache aktualisieren“, sonst könnten sie meinen Account gemäß den Gesetzen sperren. Ich habe jedoch festgestellt, dass es sich bei diesen Bildern um Benutzer-Avatare handelt, die ich nicht weiß, wie ich löschen soll.
Laut How to Delete Uploaded Files? - #3 by codinghorror und How to Delete Uploaded Files? - #25 by Falco werden hochgeladene Bilder ohne Referenzen automatisch nach 48 Stunden gelöscht. Ich habe diese Benutzer-Avatare durch die Standard-Buchstaben-Avatare ersetzt, aber nach 72 Stunden scheint mit den alten Benutzer-Avataren nichts zu passieren. Vielleicht werden Benutzer-Avatare nicht als hochgeladene Bilder betrachtet?
Habt ihr Ideen, wie ich die Benutzer-Avatar-Dateien vollständig von meinem Server löschen kann?
Und /uploads befindet sich unter /shared/standalone und nicht unter /shared.
Es gibt keine solche Datei unter /uploads, wie du in der Shell sehen kannst:
root@iosre:/var/discourse/shared# ls
standalone
root@iosre:/var/discourse/shared# cd standalone/
root@iosre:/var/discourse/shared/standalone# ls
backups postgres_backup postgres_run state uploads
log postgres_data redis_data tmp
root@iosre:/var/discourse/shared/standalone# find . -name 5414_2.png
root@iosre:/var/discourse/shared/standalone# cd uploads/
root@iosre:/var/discourse/shared/standalone/uploads# find . -name 5414_2.png
root@iosre:/var/discourse/shared/standalone/uploads#
Oh, sorry. Avatare funktionieren anders. Ich müsste mir den Code ansehen, um zu verstehen, wo ich suchen muss. Wenn dies ein Notfall ist und Sie ein Budget haben, kontaktieren Sie mich bitte direkt. Andernfalls werde ich wahrscheinlich keine freie Zeit haben, um dies zu untersuchen. Vielleicht weiß jemand anderes Bescheid.
Ich habe über 7.000 registrierte Benutzer, und weniger als 5 Benutzer verwenden versehentlich illegale Avatare. Daher möchte ich das nicht als ein einfaches 0-oder-1-Problem behandeln; ich möchte es Fall für Fall lösen, anstatt allen Benutzern die Nutzung benutzerdefinierter Avatare zu untersagen.
Ich habe eine weitere E-Mail von meinem CDN-Anbieter erhalten, und er hat mein CDN-Konto eingefroren. Daher muss ich diesen Thread für weitere Hilfe aktualisieren.
In der neuen E-Mail hieß es, dass die folgenden Links illegal seien.
Wie Sie sehen können, handelt es sich dabei um zwei Benutzer-Avatare, die Memes eines ehemaligen chinesischen Staatspräsidenten zeigen. Der CDN-Anbieter hat mich erneut aufgefordert, diese Dateien vom Server zu löschen und das CDN zu aktualisieren.
Anhand der Links konnte ich erkennen, dass die Benutzer „baal998“ und „lincwee“ waren. Gemäß dem Code-Snippet in meinem letzten Beitrag war die hochgeladene Avatar-URL von „lincwee“ /uploads/default/original/2X/5/55512211b1c8969c8038b79840464952cd3eb089.jpeg, während sie für „baal998“ /uploads/default/original/2X/c/cb2188eaeecc3a648f021fa00da4734bd60ca183.jpg lautete. Ich habe dann find /var/discourse/shared/ -name *55512211b1c8969c8038b79840464952cd3eb089* ausgeführt und alle gefundenen Dateien gelöscht; das funktionierte für „lincwee“. Bei „baal998“ hatte ich jedoch kein Glück; ich konnte immer noch auf https://iosre.com/user_avatar/iosre.com/baal998/135/2210_2.png zugreifen, obwohl keine Dateien mehr mit dem Namen *cb2188eaeecc3a648f021fa00da4734bd60ca183* vorhanden waren.
Oder einfacher ausgedrückt: Wie analysiert Discourse einen Besuch auf https://iosre.com/user_avatar/iosre.com/baal998/135/2210_2.png? Wenn jemand mit dem Quellcode vertraut ist und mir die Quelldatei oder die Klasse/Funktion nennen kann, wäre das wirklich hilfreich. Danke!
Zudem starte damit, dass du von deinem Server abrufst, nicht von der CDN. Du möchtest sicherstellen, dass du das Problem am richtigen Ort löst. Sobald du sicher bist, dass der Server die Bilder nicht sendet, kannst du mit der CDN arbeiten.
Ja, und Sie sehen, dass es von Ihrem Server gesendet wird. Das ist also der Link, den Sie beheben sollten. Nachdem Sie das Senden der Bilder gestoppt haben, können Sie das CDN leeren.