fix: Attachments on public share links broken when using AWS Accelerate

fix: Attachments broken when using non-collab and AWS bucket on the same host
(https://github.com/outline/outline/discussions/3274\)
This commit is contained in:
Tom Moor
2022-03-22 22:58:29 -07:00
parent e6eb43144c
commit 5047be9898
3 changed files with 8 additions and 2 deletions

View File

@@ -21,8 +21,12 @@ function isLinkClose(token: Token) {
function isAttachment(token: Token) {
const href = token.attrGet("href");
return (
href?.includes("attachments.redirect") ||
href?.startsWith(env.AWS_S3_UPLOAD_BUCKET_URL)
// internal
href?.startsWith("/api/attachments.redirect") ||
// external (public share are pre-signed and this is a reasonable way of detecting them)
((href?.startsWith(env.AWS_S3_UPLOAD_BUCKET_URL) ||
href?.startsWith(env.AWS_S3_ACCELERATE_URL)) &&
href?.includes("X-Amz-Signature"))
);
}