Public share and form pages only added a robots meta tag from JavaScript, so the HTML for /share/* and /form/* was served without any indexing or caching directive, and the form page had none at all. Error responses from /api/public/* also lacked X-Robots-Tag. Send one policy everywhere a token-bearing link is served: X-Robots-Tag: noindex, nofollow, noarchive, nosnippet, noimageindex Cache-Control: private, no-store Referrer-Policy: no-referrer - /api/public/*: shared middleware in the application, so it applies on Cloudflare and Docker, including 404/403 responses. Routes that already set Cache-Control keep it. - /share/* and /form/* HTML: _headers rules for Cloudflare static assets and the self-hosted static server. - Referrer-Policy keeps the share token out of Referer headers sent to linked sites. robots.txt is deliberately not used to block these paths: a disallowed URL can still be indexed from external links, because crawlers never see the noindex header. Co-authored-by: tianma-if <yingwaizhiying@gmail.com>
49 lines
1.8 KiB
JSON
49 lines
1.8 KiB
JSON
{
|
|
"name": "@edgeever/shared",
|
|
"version": "0.1.3",
|
|
"private": true,
|
|
"type": "module",
|
|
"exports": {
|
|
".": "./src/index.ts",
|
|
"./diagram-layout": "./src/diagram-layout.ts",
|
|
"./ai-prompt-seeds": "./src/ai-prompt-seeds.ts",
|
|
"./deployment-metadata": "./src/deployment-metadata.ts",
|
|
"./editor-link": "./src/editor-link.ts",
|
|
"./image-display": "./src/image-display.ts",
|
|
"./image-gallery-editing": "./src/image-gallery-editing.ts",
|
|
"./native-image-gallery": "./src/native-image-gallery.ts",
|
|
"./i18n": "./src/i18n/index.ts",
|
|
"./i18n/locales": "./src/i18n/locales.ts",
|
|
"./memo-template-seeds": "./src/memo-template-seeds.ts",
|
|
"./default-workspace-seeds": "./src/default-workspace-seeds.ts",
|
|
"./mathematics": "./src/mathematics.ts",
|
|
"./mobile-editor": "./src/mobile-editor.ts",
|
|
"./mobile-ui": "./src/mobile-ui.ts",
|
|
"./note-image-card": "./src/note-image-card.ts",
|
|
"./note-image-assets": "./src/note-image-asset-urls.ts",
|
|
"./font-catalog": "./src/font-catalog.ts",
|
|
"./font-loader": "./src/font-loader.ts",
|
|
"./note-image-fonts": "./src/note-image-fonts.ts",
|
|
"./note-image-preferences": "./src/note-image-preferences.ts",
|
|
"./public-page-headers": "./src/public-page-headers.ts"
|
|
},
|
|
"types": "./src/index.ts",
|
|
"dependencies": {
|
|
"@dagrejs/dagre": "3.1.1",
|
|
"@tiptap/core": "3.31.4",
|
|
"@tiptap/extension-details": "3.31.4",
|
|
"@tiptap/extension-image": "3.31.4",
|
|
"@tiptap/extension-link": "3.31.4",
|
|
"@tiptap/extension-list": "3.31.4",
|
|
"@tiptap/extension-mathematics": "3.31.4",
|
|
"@tiptap/extension-table": "3.31.4",
|
|
"@tiptap/markdown": "3.31.4",
|
|
"@tiptap/pm": "3.31.4",
|
|
"@tiptap/starter-kit": "3.31.4",
|
|
"js-base64": "3.9.3",
|
|
"katex": "0.18.2",
|
|
"yaml": "2.8.3",
|
|
"zod": "4.6.6"
|
|
}
|
|
}
|