Linux

如何在沒有顯示的情況下在 CentOS 上執行 Firefox?

  • August 6, 2016

我正在嘗試在無頭 CentOS 伺服器上執行 Firefox GUI 瀏覽器以執行一些 Web 測試。

我不需要查看圖形輸出,因為我使用Selenium伺服器API來控制瀏覽器的輸入並檢查輸出。

該設置已在台式 Mac 電腦上成功測試。但是,它無法在我的無頭 VPS CentOS 伺服器上執行,並顯示以下消息“錯誤:未指定顯示”。(這是有道理的,因為它只是一個放在某個機架上的伺服器。)

如何讓 Firefox 在沒有顯示的情況下執行,以便 Selenium 能夠與之互動?或者——更廣泛地說——人們如何在沒有顯示器的情況下在 Linux 伺服器上執行純 GUI 應用程序?

我注意到 Firefox 有這個命令行選項:

X11 options
 --display=DISPLAY  X display to use

不幸的是,我對 X11 或 CentOS 下的顯示器一無所知,所以我不知道在命令行上指定什麼,或者這是否有幫助。

使用 Xvfb。它為您提供了一個不需要連接到物理顯示器的 X 伺服器。

(因此,在 CentOS 上,您會執行類似“yum install xorg-x11-server-Xvfb”之類的操作。)

然後,您可以使用命令“/path/on/which/installed/Xvfb :1 -screen 0 1024x768x24 &”在顯示器“:1”上啟動它。這將創建一個解析度為 1027x768、深度為 24 的螢幕。使用“&”將使命令在後台執行。

在啟動 Firefox 之前,您需要使顯示可訪問,這是使用導出命令完成的 - 即。“export DISPLAY=:1”,指向合適的主機。

引用自:https://serverfault.com/questions/363827