Warum wird iDrive's S3-Endpunkt von Discourse abgelehnt?

Welches Format wird von ihm benötigt?
Oder erlaubt die allererste Option im Screenshot nur Amazon AWS S3??

Funktioniert es, wenn Sie nur den Hostnamen eingeben?

1 „Gefällt mir“

Sie meinen, ich soll einfach (https://)idrivee2-51.com in die S3-CDN-URL eingeben?
Nein, das gab auch denselben Fehler.

Haben Sie Leerzeichen am Ende?

2 „Gefällt mir“

Wenn ich mir den Validator ansehe, sieht er so aus:

  s3_endpoint:
    default: ""
    regex: '^https?:\\/\\/.+[^\\/]$'

Wenn ich also den von Ihnen eingegebenen Wert überprüfe, wird angezeigt, dass er einwandfrei ist:

[1] pry(main)> 'https://b1v7.or.idrive2-51.com'.match /^https?:\\/\\/.+[^\\/]$/
=> #<MatchData "https://b1v7.or.idrive2-51.com">

Offensichtlich ist etwas mit dem Feld nicht in Ordnung. Wie @pfaffman vorschlägt, überprüfen Sie Leerzeichen.

Wenn es immer noch nicht funktioniert, funktioniert es dann von der Rails-Konsole aus?

Ich würde erwarten, dass dies fehlschlägt:

[1] pry(main)> SiteSetting.s3_endpoint = 'gopher://b1v7.or.idrive2-51.com'
Discourse::InvalidParameters: s3_endpoint: Value doesn't match the required format.
from /home/michael/prog/Discourse/discourse/lib/site_settings/type_supervisor.rb:288:in `validate_value'

aber das sollte funktionieren:

[1] pry(main)> SiteSetting.s3_endpoint = 'https://b1v7.or.idrive2-51.com'
=> "https://b1v7.or.idrive2-51.com"
2 „Gefällt mir“

Nein. Überhaupt nicht.

Aber ich bin überrascht, dass es heute denselben Wert angenommen hat, den es bisher (zu jeder Zeit, ich habe einfach mit der Schaltfläche „Kopieren“ von der iDrive-Website kopiert und hier eingefügt, und heute habe ich dasselbe getan) nicht angenommen hat.

Und ich glaube, es weigert sich manchmal immer noch, einen Wert anzunehmen, den es vor einem Moment noch angenommen hat.

Aber alles in allem bin ich in diesem Punkt jetzt sortiert.

Danke, es ist jetzt sortiert.

Aber bitte sagen Sie mir, was ich in das Feld S3 CDN url eingeben soll (oder es leer lassen soll)? Es hat bereits diesen Wert aus früheren/AWS-Zeiten: https://bhdisco.s3.ap-south-1.amazonaws.com/uploads

Sie möchten wirklich ein CDN im CDN-Feld platzieren. Sie können die Bucket-URL eingeben, aber das kostet mehr und ist langsamer.

1 „Gefällt mir“

Ok. Ich hab’s.
Aber es fühlt sich alles so umständlich an, ich bleibe lieber beim empfohlenen S3-Bucket-Anbieter, nur AWS!! Also habe ich die AWS-ID und das Geheimnis wiederhergestellt.

Aber dabei bin ich auf ein neues Hindernis gestoßen. Obwohl ich im AWS-Interface nichts geändert habe, außer mein Login strenger zu gestalten, sind die Medien-Uploads, die darin vorgenommen werden, nur dann auf meiner Website sichtbar, wenn ich den Lesezugriff für alle öffentlich aktiviere.
Ich weiß nicht, wie es vorher funktioniert hat und warum ich jetzt die Berechtigungen meines Buckets so einstellen muss:

(Beide rot markierten Felder habe ich jetzt geändert, sonst kann ich nicht einmal meine eigenen Uploads in der Vorschau anzeigen)

Wenn Sie keinen CDN vor Ihrem Bucket-Speicher konfiguriert haben, lassen Sie ihn leer.

2 „Gefällt mir“