Pourquoi le point de terminaison S3 d'iDrive est-il rejeté par Discourse ?

Quel format est requis par celui-ci ?
Ou la toute première option dans la capture d’écran ne permet-elle que Amazon Aws S3 ??

Est-ce que ça fonctionne si vous mettez juste le nom d’hôte ?

1 « J'aime »

Vous voulez dire que je dois juste remplir (https://)idrivee2-51.com dans l’URL du CDN S3 ?
Non, cela a également donné la même erreur.

Avez-vous des espaces de fin ?

2 « J'aime »

En regardant le validateur, c’est :

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

donc vérifier la valeur que vous avez mise montre qu’elle est parfaitement correcte :

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

Vous avez manifestement quelque chose qui ne va pas dans le champ. Comme le suggère @pfaffman, vérifiez les espaces.

Si cela ne fonctionne toujours pas, est-ce que cela fonctionne depuis la console Rails ?

Je m’attendrais à ce que cela échoue :

[1] pry(main)> SiteSetting.s3_endpoint = 'gopher://b1v7.or.idrive2-51.com'
Discourse::InvalidParameters: s3_endpoint: La valeur ne correspond pas au format requis.
from /home/michael/prog/Discourse/discourse/lib/site_settings/type_supervisor.rb:288:in `validate_value'

mais cela devrait fonctionner :

[1] pry(main)> SiteSetting.s3_endpoint = 'https://b1v7.or.idrive2-51.com'
=> "https://b1v7.or.idrive2-51.com"
2 « J'aime »

Non. Pas du tout.

Mais je suis surpris qu’aujourd’hui il ait pris la même valeur, ce qu’il ne prenait pas jusqu’à présent (à tout moment, je copiais simplement avec le bouton ‘copier’ du site idrive et je collais ici, et aujourd’hui j’ai fait de même).

Et, encore une fois, je pense qu’il refuse parfois d’accepter une valeur, ce qu’il faisait il y a un instant.
Mais dans l’ensemble, je suis maintenant réglé sur ce point.

Merci, c’est résolu maintenant.

Mais dites-moi, que dois-je mettre dans le champ S3 CDN url (ou le laisser vide) ?
Il a déjà cette valeur remplie des temps précédents/AWS : https://bhdisco.s3.ap-south-1.amazonaws.com/uploads

Vous voulez vraiment mettre un cdn sur le champ cdn. Vous pouvez y mettre l’URL du bucket, mais cela coûtera plus cher et sera plus lent.

1 « J'aime »

Ok. J’ai compris.
Mais tout cela semble si compliqué, je préfère utiliser uniquement le fournisseur de bucket S3 recommandé, AWS !! J’ai donc de nouveau rétabli l’ID et le secret AWS.

Mais en faisant cela, j’ai rencontré un nouvel obstacle. Même si je n’ai rien changé dans l’interface AWS, à part rendre ma connexion plus stricte, maintenant les téléchargements de médias qui y sont effectués ne sont visibles sur mon site Web que si j’active l’accès en lecture pour tous les utilisateurs publics.
Je ne sais pas comment cela fonctionnait auparavant, et pourquoi seulement maintenant je dois configurer les « autorisations » de mon bucket de cette manière :

(Les deux éléments indiqués en rouge ont été modifiés par moi maintenant, sinon je ne peux même pas prévisualiser mes propres téléchargements)

Si vous n’avez pas configuré de CDN devant votre bucket store, laissez-le vide.

2 « J'aime »