如何在 Linux 上運行 Safari:遠端存取和 WebKit 選項

蘋果目前沒有提供官方支援的 Linux 版 Safari。其最後一個 Windows 版本 Safari 5.1.7 發佈於 2010 年,現已過時。如需使用真正的 Safari,請使用遠端 Mac;如需在 Linux 上進行測試,請使用 Playwright 的 WebKit 版本;WebKit 並非 Safari。

一個概念性的 Linux 終端機旁邊是 Safari 不可用的面板,表示目前 Linux 系統上缺少原生 Safari 版本。
示意圖,並非即時軟體包搜尋:蘋果公司沒有發布最新的 Linux 版 Safari 瀏覽器。

選擇符合您目標的方法

你的目標使用你將獲得什麼
在實際的 Safari 瀏覽器中開啟或測試網站。遠端 macOS 瀏覽器會話Safari 瀏覽器運行在 Mac 上,由 Linux 系統控制。
在 Linux 上執行自動化瀏覽器檢查劇作家 WebKit這是一個基於 WebKit 核心的瀏覽器,並非 Safari 品牌。
在 Linux 系統上正常瀏覽網頁支援的 Linux 瀏覽器,例如 Firefox 或 Chromium維護良好的瀏覽器,並已更新 Linux 版本

若要了解 Safari 的特定行為、擴充功能、媒體支援或確切版本,請在 macOS 上的實際 Safari 瀏覽器中進行測試。 Linux WebKit 可以偵測到引擎問題,但無法驗證 Apple 瀏覽器的相容性。

在 Linux 系統中使用真實的 Safari 工作階段。

即使沒有 Mac,瀏覽器測試服務也是簡單易用的選擇。 BrowserStack Live 提供雲端瀏覽器會話,並支援 Safari 瀏覽器。您可以查看其Live 概覽和目前瀏覽器清單;支援的 macOS 和 Safari 版本可能會有所變更。

  1. 開啟遠端瀏覽器控制面板。登入提供 macOS 桌面版 Safari 的服務。在其裝置或瀏覽器選擇器中,選擇 macOS 桌面版和可用的 Safari 版本。
  2. 啟動會話並開啟您的網站。在遠端瀏覽器視窗中輸入網站的公共位址。瀏覽器運行在遠端 Mac 上;Linux 電腦僅用於顯示和控制該會話。
一台 Linux 筆記型電腦連接到一台獨立的 Mac 桌上型電腦,並開啟了一個瀏覽器,示範如何遠端存取 Safari 瀏覽器。
遠端會話允許 Linux 桌面控制在 macOS 上運行的瀏覽器;此示意圖並非 BrowserStack 的螢幕截圖。

到達當地開發區

如果網站僅運行在您的 Linux 機器上,遠端瀏覽器無法自行存取 localhost。請使用該服務的本機測試隧道。 BrowserStack 的官方設定支援為此目的提供的 Linux 命令列二進位檔案:

  1. 根據BrowserStack 本機測試說明,下載與您的系統架構相符的 Linux 二進位文件,然後解壓縮 ZIP 檔案。
  2. 從您的帳戶設定複製您的存取金鑰。在終端中,切換到包含已解壓縮二進位檔案的資料夾並運行:
./BrowserStackLocal --key YOUR_ACCESS_KEY

將佔位符替換為您自己的金鑰,並在測試期間保持終端開啟。然後啟動或重新啟動啟用本機測試的即時會話,並輸入您的本機位址,例如 `<localhost:300>` http://localhost:3000。測試完成後,使用 `<localhost:300>` 停止隧道Ctrl+C。請像對待密碼一樣對待此存取金鑰,切勿將其貼到公用程式碼中或與他人共用。

一個運行本機主機站點的 Linux 終端,透過安全隧道連接到遠端 macOS Safari 視窗。
本機測試通道將開發網站路由到遠端瀏覽器;這是一個概念視圖,而不是服務儀表板。

使用 Playwright 在本地運行 WebKit

對於在 Linux 或 Linux CI 上執行的自動化測試,Playwright 可以安裝其 WebKit 版本。在安裝了 Python 3 的系統上,建立一個虛擬環境,安裝 Playwright,然後下載對應的瀏覽器二進位:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install playwright
playwright install webkit

一個簡單的Python腳本就可以啟動該瀏覽器並載入頁面:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.webkit.launch()
    page = browser.new_page()
    page.goto("https://example.com")
    print(page.title())
    browser.close()

使用 Python 運行腳本。如果瀏覽器報告缺少系統庫,請為您的發行版安裝 WebKit 依賴項,或遵循 Playwright 的瀏覽器安裝和系統需求指南。如果 Playwright 更新後所需的瀏覽器版本發生變化,請重新執行瀏覽器安裝指令。

一個運行 Playwright WebKit 的 Linux 終端,旁邊是一個獨立的 macOS Safari 視窗。
Playwright WebKit 是一個獨立的 Linux 測試瀏覽器,而不是此示意圖中與其並排顯示的 Safari 視窗。

Playwright 的 WebKit 是基於 WebKit 原始碼修改而來,並非 Safari 官方版本,因此可能包含一些 Safari 版本之前的改動。此外,不同作業系統上的某些行為也會有所不同。為了獲得更接近 Safari 的效果,Playwright 建議在 macOS 上運行 WebKit,尤其是在影片播放方面。

為什麼 Wine 和舊版 Safari 安裝程式都是糟糕的選擇

舊版 Wine 啟動的是 Windows 版 Safari,而非最新的 Linux 版本。蘋果公司稱 Safari 5.1.7(發佈於 2010 年)已過時。 Wine 無法新增缺少的安全性修補程式或 Safari 的現代功能。請避免使用非官方的安裝程式鏡像,切勿使用此瀏覽器存取敏感帳戶。如果出於歷史測試目的需要保留此瀏覽器,請務必將其與日常瀏覽活動和資料隔離。

快速故障排除

  • 遠端會話無法開啟 localhost:請確認本機隧道仍在執行,即時會話已啟用本機測試,且您的開發伺服器正在監聽 URL 中的連接埠。
  • Playwright WebKit 無法啟動:請檢查是否缺少 Linux 函式庫,並依照您的發行版的系統相依性說明進行操作。
  • WebKit 測試通過,但 Safari 仍有差異:請在 macOS 上的 Safari 瀏覽器中重複測試。這兩個環境可能在瀏覽器補丁和平台特性方面存在差異。

留下評論

如何在Linux系統上使用Cameractrls更改網路攝影機設置

如何在Linux系統上使用Cameractrls更改網路攝影機設置

使用 Cameractrls 在 Linux 上變更網路攝影機設定:調整曝光、色彩、減少閃爍和其他支援的控件,然後檢查相容的視訊模式。

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

在 Linux 系統上,您可以使用 JetBrains Toolbox 或獨立的 tar.gz 壓縮套件安裝 PhpStorm,此外還有 Snap 和 Arch AUR 版本可供選擇。 Java 已預先安裝。

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

在 Linux 上使用 GNOME Disks 或 dd 建立 CD-ROM ISO。識別光碟機,監控複製過程,驗證鏡像,並了解何時損壞的光碟或音訊光碟需要其他工具。

如何在 XFCE 4 上設定雙面板

如何在 XFCE 4 上設定雙面板

為每個顯示器建立一個單獨的 XFCE 4 面板,將第二個面板指派給正確的輸出,調整其位置和大小,並新增所需的啟動器和狀態項目。

如何在Linux上安裝Cisco Packet Tracer

如何在Linux上安裝Cisco Packet Tracer

下載適用於 Ubuntu 64 位元系統的 Cisco Packet Tracer 9.0.1,使用 APT 安裝 DEB 軟體包,在終端機中接受許可協議,然後登入以啟動實驗環境。

如何在Linux系統下使用GIMP摳圖

如何在Linux系統下使用GIMP摳圖

在 Linux 系統上使用 GIMP 去除照片背景:描繪主體,刪除選定的背景,保持透明度,並匯出可重複使用的 PNG 檔案。

免費下載 FlightGear:官方安裝指南

免費下載 FlightGear:官方安裝指南

從官方網站免費下載 FlightGear。比較 Windows、macOS 和 Linux 版本的軟體包,安裝資料文件,即可開始您的首次飛行。

Google Tasks桌面應用程式:如何在電腦上使用

Google Tasks桌面應用程式:如何在電腦上使用

在瀏覽器中開啟 Google Tasks,新增 Chrome 捷徑或應用程式啟動,並透過行事曆和 Gmail 管理有日期的待辦事項。

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler 可以將 MP3 片段對應到鍵盤按鍵,並支援音訊循環播放。了解這款經典免費軟體的功能、其舊功能的缺失以及下載前需要檢查的事項。

如何在 Linux 系統上安裝 Wireshark:Ubuntu、Fedora、Arch 等

如何在 Linux 系統上安裝 Wireshark:Ubuntu、Fedora、Arch 等

使用目前軟體包命令在 Ubuntu、Debian、Fedora、Arch 或 openSUSE 上安裝 Wireshark,然後安全地配置即時資料包擷取。