Issues deploying Strapi to Digital Ocean App Platform - [ERR_TLS_CERT_ALTNAME_INVALID]

Key Info:

  • @strapi/strapi: ^4.3.9
  • @strapi/provider-upload-aws-s3: ^4.4.3,
  • node: >=14.19.1 <=18.x.x,
  • PostgresSQL
  • npm: >=6.0.0

All available in the github repo:

GitHub Repo

I’ve deployed Strapi to Digital Ocean App Platform by following all the steps on the Strapi documentation, and the I’m having an issue with using Digital Ocean Spaces as an upload provider.

I’m using the supported aws s3 upload provider plugin for Strapi - see key info. Many forum posts have shown me that this should integrate just fine with Digital Ocean Spaces.

  • Firstly, no images are shown in the Upload Manager in Strapi, it’s just broken thumbnails
  • Secondly, I cannot upload new assets. I get a 500 Error.

When I investigate the Digital Ocean logs I get this error:

[iland-design-website-backend] [2022-10-17 15:17:47] Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: strapi-cms.iland-design-website-upload-space.fra1.digitaloceanspaces.com. is not in the cert's altnames: DNS:*.fra1.digitaloceanspaces.com, DNS:fra1.digitaloceanspaces.com
[iland-design-website-backend] [2022-10-17 15:17:47]     at new NodeError (node:internal/errors:372:5)
[iland-design-website-backend] [2022-10-17 15:17:47]     at Object.checkServerIdentity (node:tls:346:12)
[iland-design-website-backend] [2022-10-17 15:17:47]     at TLSSocket.onConnectSecure (node:_tls_wrap:1542:27)
[iland-design-website-backend] [2022-10-17 15:17:47]     at TLSSocket.emit (node:events:527:28)
[iland-design-website-backend] [2022-10-17 15:17:47]     at TLSSocket.emit (node:domain:475:12)
[iland-design-website-backend] [2022-10-17 15:17:47]     at TLSSocket._finishInit (node:_tls_wrap:946:8)
[iland-design-website-backend] [2022-10-17 15:17:47]     at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:727:12)
[iland-design-website-backend] [2022-10-17 15:17:47]     at TLSWrap.callbackTrampoline (node:internal/async_hooks:130:17)
[iland-design-website-backend] [2022-10-17 15:17:47] (node:17) PromiseRejectionHandledWarning: Promise rejection was handled asynchronously (rejection id: 5)
[iland-design-website-backend] [2022-10-17 15:17:47] (Use `node --trace-warnings ...` to show where the warning was created)
[iland-design-website-backend] [2022-10-17 15:17:47] (node:17) PromiseRejectionHandledWarning: Promise rejection was handled asynchronously (rejection id: 6)
[iland-design-website-backend] [2022-10-17 15:17:47] [2022-10-17 15:17:47.968] error: Hostname/IP does not match certificate's altnames: Host: strapi-cms.iland-design-website-upload-space.fra1.digitaloceanspaces.com. is not in the cert's altnames: DNS:*.fra1.digitaloceanspaces.com, DNS:fra1.digitaloceanspaces.com

But interestingly, for the rest of the assets stored in the Strapi Upload Manager, they are not being looked for in Digital Ocean Spaces, Strapi is sending a request to /uploads/ :

iland-design-website-backend] [2022-10-17 15:17:16] [2022-10-17 15:17:16.587] http: GET /uploads/thumbnail_Lar_Gibbon_Card_1_ca9e728b87.png?width=650&height=650 (26 ms) 404
[iland-design-website-backend] [2022-10-17 15:17:16] [2022-10-17 15:17:16.633] http: GET /uploads/thumbnail_logo_4d15966e35.png?width=1000&height=265 (56 ms) 404

Perhaps this adds up, since these were uploaded before I attempted to implement and Upload Provider, but just thought I would share that information too.

Any help is much appreciated, if you need for information please let me know.

If you think I should try a different approach, maybe using Cloudinary or something else, then let me know too. I’m open to ideas, but just want to get this thing working.

Did you find any solution?

following this issue

@hmqk1995 @mcnaveen

I had the same issue, I had configured my env variable DO_SPACE_ENDPOINT wrongfully.

I changed it from https://my-bucket-name.ams3.digitaloceanspaces.com

To: ams3.digitaloceanspaces.com

This resolved it for me

1 Like