どのようなフォーマットが必要ですか?
それとも、スクリーンショットの最初のオプションのみがAmazon AWS S3を許可しますか?
ホスト名だけ入力したら動きますか?
(https://)idrivee2-51.comをS3 CDN URLに入力すればよいということですか?
いいえ、同じエラーが発生しました。
末尾にスペースがありますか?
バリデーターを見ると、次のようになっています。
s3_endpoint:
default: ""
regex: '^https?:\/\/.+[^/]$'
したがって、入力した値を確認すると、問題ないことがわかります。
[1] pry(main)> 'https://b1v7.or.idrive2-51.com'.match /^https?:\/\/.+[^/]$/
=> #<MatchData "https://b1v7.or.idrive2-51.com">
明らかに、フィールドに何か問題があります。@pfaffman が示唆するように、スペースを確認してください。
それでも機能しない場合は、rails コンソールから機能しますか?
これは失敗すると予想されます。
[1] pry(main)> SiteSetting.s3_endpoint = 'gopher://b1v7.or.idrive2-51.com'
Discourse::InvalidParameters: s3_endpoint: 値が必要な形式と一致しません。
from /home/michael/prog/Discourse/discourse/lib/site_settings/type_supervisor.rb:288:in `validate_value'
しかし、これは機能するはずです。
[1] pry(main)> SiteSetting.s3_endpoint = 'https://b1v7.or.idrive2-51.com'
=> "https://b1v7.or.idrive2-51.com"
いいえ、全くありません。
しかし、今日になって、今まで(常に、idriveサイトから「コピー」ボタンでコピーしてここに貼り付けていました。今日も同じことをしました)受け付けなかった値が、同じ値を受け付けるようになったことに驚いています。
そして、今でも、一瞬前は受け付けていた値を受け付けなくなることがあると思います。
しかし、全体として、この点については解決しました。
ありがとうございます。解決しました。
しかし、S3 CDN urlフィールドには何を入力(または空白にする)すればよいですか?
以前のAWS時代から、すでにこの値が入力されています: https://bhdisco.s3.ap-south-1.amazonaws.com/uploads
CDNフィールドにCDNを配置したいのですね。バケットURLを配置することもできますが、コストが高くなり、遅くなります。
わかりました。
しかし、すべてが非常に煩雑に感じられるため、推奨されるS3バケットプロバイダーであるAWSのみを使用することにします!そこで、AWS IDとシークレットを再度復元しました。
しかし、そうすることで新たな障害に直面しました。AWSインターフェース内でログインをより厳格にした以外は何も変更しなかったにもかかわらず、現在、AWSにアップロードされたメディアは、「公開」への「読み取り」アクセスをオンにしないと、私のウェブサイトに表示されません。
以前はどのように機能していたのか、そしてなぜ今になって私のバケットの内容の「権限」をこのように設定する必要があるのかわかりません。
(両方とも赤色で表示されているのは、私が今変更した部分です。そうでなければ、自分のアップロードをプレビューすることさえできませんでした)
バケットストアの前にCDNを構成していない場合は、空白のままにしてください。

