﻿# 認識 Google Chrome 與 Microsoft Edge 的 Kiosk 模式

最近有個專案可能會需要讓網站跑在 [Kiosk](https://en.wikipedia.org/wiki/Interactive_kiosk) 模式下，雖然在 Windows 10 IoT 企業版也有內建 [Kiosk 模式](https://learn.microsoft.com/zh-tw/windows/iot/iot-enterprise/kiosk-mode/kiosk-mode?WT.mc_id=DT-MVP-4015686)，但如果是一般電腦也想用 Kiosk 模式執行網站，其實也可以透過 Google Chrome 或 Microsoft Edge 輕鬆的做到。這篇文章我就來好好介紹一下這個鮮為人知的 Kiosk 模式。

### 簡介 Kiosk 模式

維基百科的解釋是這樣的：

> 互動式資訊服務站（英語：Interactive kiosk，簡稱：Kiosk）是一部電腦終端機，以特定規格的硬體與軟體來製作，用來提供通訊、商業、娛樂或是教育的資訊與應用服務。

這樣的裝置其實到處都可以看的到，像是停車場的自動繳費系統，或是醫院的自助繳費系統，卡拉 OK 的點播機，其實都是使用 Kiosk 模式來呈現使用者介面。

換句話說，就是把可以多樣輸入的「鍵盤」移除掉，只讓你用滑鼠或觸控的方式操作的模式，就是 Kiosk 模式！(讀音: `ㄎㄧㄚㄙㄎ`)

### 啟動瀏覽器的 Kiosk 模式

首先，在啟動 Kiosk 模式之前，有個非常重要的前置作業，就是把你目前已經開啟的所有瀏覽器視窗全部關閉，一定要全部都關閉，才能開啟 Kiosk 模式！

再來，就是使用 Command Prompt 命令提示字元啟動 Chrome 或 Edge，並加上 `--app` 與 `--kiosk` 參數，這樣就可以啟動網站了：

-   啟動 Google Chrome 的 Kiosk 模式
    
    ```batch
    "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --app="https://www.duotify.com" --kiosk
    ```
    
-   啟動 Microsoft Edge 的 Kiosk 模式
    
    ```batch
    "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --app="https://www.duotify.com" --kiosk
    ```
    
    由於預設 Microsoft Edge 會在關閉之後繼續在背景執行，這會讓你在開啟 Microsoft Edge 之後無法完全關閉瀏覽器程序，若有瀏覽器程序在背景執行，將導致 Kiosk 模式無法自動開啟。建議參考下圖設定，關閉「**當 Microsoft Edge 關閉時，繼續執行背景擴充功能及應用程式**」選項即可。
    
    ![當 Microsoft Edge 關閉時，繼續執行背景擴充功能及應用程式](https://stwillblogassets.blob.core.windows.net/files/images/external/user-images.githubusercontent.com/0f185ca383084073e7c1-186474076-ee18ea72-dae1-49ca-bfbc-e4cb09f1afd6.png)
    

### 瀏覽器 Kiosk 模式的限制

由於 Kiosk 模式的初衷，就是希望使用者不要擅自跳離網站應用程式，在「沒有鍵盤」的情況下，只能用「滑鼠」或「觸控」進行操作，因此你在 Kiosk 模式下將會有以下限制：

1.  你找不到可以輸入「網址」的地方，沒有「網址列」可以用
2.  你必須在網頁中實作「虛擬鍵盤」協助使用者輸入表單欄位
3.  沒有可以關閉瀏覽器的地方，你也無法使用任何技巧關閉此頁面

### 如何在 Kiosk 模式同時啟用 Incognito 無痕模式

-   Google Chrome
    
    ```batch
    "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --app="https://www.duotify.com" --kiosk --incognito
    ```
    
-   Microsoft Edge
    
    ```batch
    "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --app="https://www.duotify.com" --kiosk --inprivate
    ```
    

### 開機自動啟動 Kiosk 模式

1.  從 Google Chrome 建立桌面捷徑
    
    ![image](https://stwillblogassets.blob.core.windows.net/files/images/external/user-images.githubusercontent.com/e09258b5bc32cd93f245-186465991-1f57af2c-2ca5-4d3c-8709-963810623214.png)
    
2.  修改捷徑的目標
    
    請將 `--app-id=mjoklplbdd...` 移除，換成 `--app="https://your.domain/url" --kiosk` 即可
    
    Google Chrome
    
    ```batch
    "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --app="https://www.duotify.com" --kiosk
    ```
    
    Microsoft Edge
    
    ```batch
    "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --app="https://www.duotify.com" --kiosk
    ```
    
3.  開啟 `Startup` (啟動) 資料夾
    
    透過 `Win+R` 啟動「執行」視窗，並執行以下命令，開啟「啟動」資料夾：
    
    ```batch
    shell:startup
    ```
    
4.  將桌面的 **捷徑** (Shortcut) 檔案，複製到 `Startup` (啟動) 資料夾之中，即可設定完成！
    

### 相關連結

-   [List of Chromium Command Line Switches « Peter Beverloo](https://peter.sh/experiments/chromium-command-line-switches/) (**經常更新內容**) 👍
-   [互動式資訊服務站 - 維基百科，自由的百科全書](https://zh.wikipedia.org/wiki/%E4%BA%92%E5%8B%95%E5%BC%8F%E8%B3%87%E8%A8%8A%E6%9C%8D%E5%8B%99%E7%AB%99)
-   [Interactive kiosk - Wikipedia](https://en.wikipedia.org/wiki/Interactive_kiosk)
-   [Kiosk 模式 | Microsoft Docs](https://learn.microsoft.com/zh-tw/windows/iot/iot-enterprise/kiosk-mode/kiosk-mode?WT.mc_id=DT-MVP-4015686)
-   [How to setup Chrome Kiosk Mode in Windows 10 / 11](https://thegeekpage.com/how-to-setup-chrome-kiosk-mode-in-windows-10/)
-   [How to Run MS Edge from Command Line & Open URL](https://windowsloop.com/run-ms-edge-from-command-line/)
