·12 分鐘閱讀·drrop.cc

在 LINE / Discord 分享連結不顯示 preview?4 種方法 + 為什麼

想在 LINE 群組或 Discord 貼連結但不要顯示 preview?本文 4 種方法 + 解釋 Open Graph 原理 + 為什麼有時 preview 反而幫倒忙。

你在 LINE 群組貼一條 YouTube 連結 — 自動展開大張 thumbnail + 標題 + 描述。在 Discord 也一樣。在 Twitter / Facebook 都會。

這個叫 Link Preview(連結預覽),背後是 Open Graph 協議。多數情況下方便,但有時候你不想要它顯示

  • 分享驚喜 / 答案,不想被 preview 劇透
  • 連結內容含隱私資訊(譬如分享 Google Doc preview 顯示文件首段)
  • 群組訊息流太亂(10 條訊息 10 張大圖)
  • 連結含「成人 / 敏感內容」preview,貼進公開群組不適合

本文 4 種方法控制連結 preview + 解釋原理。

當 app(LINE / Discord / Twitter)看到一個 URL,它會:

  1. 訪問該 URL(伺服器端,不是 user 裝置)
  2. 抓 HTML 內的 Open Graph meta tags
  3. render preview 顯示在訊息

關鍵 meta tags:

<meta property="og:title" content="標題" />
<meta property="og:description" content="描述" />
<meta property="og:image" content="https://.../thumb.jpg" />
<meta property="og:type" content="article" />

沒有 og: tag → 多數 app 用 <title> + <meta name="description"> fallback。 完全沒 meta → app 不知道怎麼 preview,顯示 raw URL。

方法 1:用「不顯示 preview」的特殊格式

各 app 有獨門指令:

Discord

在 URL 前後加 < >

<https://example.com/page>

→ Discord 不會 fetch preview,顯示 raw URL(但仍可點)。

Telegram

在 URL 前加文字(不純粹只是 URL):

看這個 https://example.com/page

→ 但這仍可能 trigger preview。更可靠:用 IV (Instant View) 不支援的 URL。

Slack

URL 前後加角括弧:

<https://example.com/page>

→ Slack 不顯示 preview。或在 Preferences 內全域關掉。

LINE

沒有原生方法 — LINE 對所有 URL 自動抓 preview。

對 LINE,要靠下面其他方法。

方法 2:用沒 Open Graph 的 host

如果你貼的連結對應的目標 URL 沒設 OG tags → app 自然 preview 不出來。

例子:

  • 純 plain HTML 頁面(沒 SEO 處理)
  • 某些 raw GitHub blob URL
  • 各種 dev / staging 環境的測試 URL

多數正常網站都有 OG(為了 SEO + 社群分享)— 這方法限制大。

方法 3:先過短網址,但短網址 host 沒 OG

重點原理:app 抓 preview 時,只抓 user 看到的 URL,不會 follow redirect。

也就是:

  • user 看到 drrop.cc/l/abc
  • app 訪問 drrop.cc/l/abc 抓 OG
  • drrop.cc/l/abc 是個 302 redirect,沒 HTML 內容
  • app 抓不到 OG,不顯示 preview

短網址服務的 redirect endpoint 不返回 HTML(純 302 status + Location header)→ 多數 app 跳過 preview。

實測:

平台對 drrop.cc 短網址行為
LINE不顯示 preview(只看到 short URL)
Discord不顯示 preview
Telegram不顯示 preview
Slack不顯示 preview
Twitter / X顯示 short URL(不 expand 目標)
Facebook部分情況會 expand,多數不會

用 drrop.cc 包目標 URL 是「實質」隱藏 preview 的有效方法

方法 4:自己改目標 URL 的 OG(如果你能控制目標)

如果你擁有目標網站,可以:

a. 完全移除 OG tags

但這影響 SEO(搜尋引擎 + 其他社群分享都失去 preview)。

b. OG 顯示 spoiler-safe 內容

譬如目標是「劇情大反轉」內容,但 og:title 設「神祕影片」、og:image 設一個中性圖。

  • 直接點開的 user 看到真內容
  • LINE preview 只看到中性版本

c. 動態 OG based on referrer

進階:偵測 fetch 來自哪個 social app,回應不同 OG。技術門檻較高。

不同場景的推薦

① 「驚喜 / 答案」場景(不想被劇透)

  • LINE → 用 drrop.cc 短網址包
  • Discord → URL 前後加 < >

② 公開群組分享私密文件

  • 不要直接貼原 URL(preview 會洩漏文件首段)
  • drrop.cc 短網址包 + 加密碼保護
  • 或先把文件 export 截圖,無 OG
  • bio link 通常自然不會 expand(IG / Twitter bio 不展開連結)
  • 但對方點開後分享給其他人 → 那時可能 preview
  • 用 drrop.cc 包 = 多一層 preview 控制

④ 行銷 / 業務發訊

  • 通常希望 preview 顯示(增加點擊率)
  • 不要用 short URL(會 hide preview) → 直接貼長 URL

drrop.cc 的設計

drrop.cc 的 /l/{code} endpoint 設計上無 HTML 響應

HTTP/1.1 302 Found
Location: https://target.example.com
Cache-Control: no-store
Referrer-Policy: no-referrer
Content-Length: 0

沒 body、沒 HTML、沒 OG tags → app 抓不到 preview

這是個 side effect of 純 302 design:

  • ✓ 對「不想顯示 preview」場景 → drrop.cc 完美 work
  • ✗ 對「想顯示 preview」場景 → drrop.cc 也擋掉了

drrop.cc 沒提供 「顯示 preview」 的 toggle(這需要額外 OG generation + 增加複雜度)。

對比:哪些短網址會 / 不會被 preview

服務LINE previewDiscord preview
bit.ly部分時候會 expand 目標通常會
tinyurl.com通常不會通常不會
ppt.cc不會不會
myppt.cc不會不會
drrop.cc不會不會
lihi.io部分跳轉夾廣告 → preview 顯示廣告

結論:純 302 短網址(drrop.cc / ppt.cc)對「隱藏 preview」最有效。

進階:強制顯示 preview 的方法

反過來想 — 你想要 preview 但目標 URL 沒 OG 怎麼辦?

1. 給目標 URL 加 OG meta tags

最根本但需要 access。

2. 用 OG 中介服務

譬如 OpenGraph.iomicrolink.io — 你提供 URL,他們生成一個帶 OG 的中介頁。

3. 用 vmt.tw / vt.tw 等台灣本土 OG 短網址服務

這類服務刻意提供 OG(跟 drrop.cc 路線相反)。

4. 直接貼長 URL

跳過短網址,讓 app 直接訪問目標。

FAQ

Q:drrop.cc 短網址在 LINE 完全不顯示 preview 嗎? A:對。drrop.cc /l/{code} 是純 302 沒 HTML response,LINE / Discord / Slack / Telegram 都不會 preview。

Q:能不能在 drrop.cc 短網址加自訂 OG? A:目前不能。drrop.cc 縮網址設計上純 redirect 不含內容。如果想要「短網址 + 自訂 OG」 → 上傳一個 landing page(HTML)到 drrop.cc 影片功能(圖片也可上傳)— 但這是 hacky workaround。

Q:為什麼 LINE preview 沒辦法手動關閉? A:LINE 沒提供 user-facing 開關。其他 app(Slack / Discord / Telegram)都有,這是 LINE 設計選擇。

Q:preview 顯示舊內容怎麼辦? A:preview cache 是 app 端 — LINE / Discord 各自 cache。對方手動清訊息 cache 或等 24h 過期。對 server 端來說,目標 URL 加 Cache-Control: no-cache 可降低被誤 cache 機率。

Q:preview 會洩漏隱私嗎? A:理論上 — preview render 是 app server 端訪問,會把 URL + IP + timestamp 留在 app 公司的 log。對「想完全不被 LINE 看到我訪問什麼」場景 → 用 drrop.cc 短網址包,LINE 只看到 short URL,看不到目標。

最後

連結 preview 是個 double-edged tool:

  • 想吸引點擊 → 想要 preview
  • 想隱藏內容 / 驚喜 / 隱私 → 不想要 preview

控制 preview 的最簡方法:用純 302 短網址(drrop.cc)包目標 URL

→ 試試 drrop.cc:drrop.cc