1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
在 Python 問世之前(特別是 Netscape 盛行的 1990 年代中後期到 2000 年代初期),要在區域網路中實作網頁伺服器,通常需要依賴以下幾種方法:

### 1. 安裝專業的網頁伺服器軟體 (最常見且正規的方式)

這是當時也是現在主流的作法。即使是在區域網路內,人們也會安裝功能完整的網頁伺服器軟體來託管 HTML 檔案。最常見的選擇包括:

* **Apache HTTP Server**:
* 這是當時(直到今天)全球市佔率最高的網頁伺服器軟體,適用於各種作業系統(Linux, Unix, Windows)。
* 它功能強大,支援各種模組,可以處理靜態 HTML 檔案、CGI 腳本、PHP 等動態內容。
* **實作方式:**
1. 下載並安裝 Apache 軟體。
2. 配置 `httpd.conf` 等設定檔,指定網頁根目錄 (Document Root),例如 `C:\Apache\htdocs` 或 `/var/www/html`。
3. 將 HTML 檔案及相關資源放在指定的根目錄下。
4. 啟動 Apache 服務。
5. 其他區域網路內的電腦透過該伺服器電腦的 IP 位址(例如 `http://192.168.1.100/index.html`)進行訪問。
* **優點:** 功能強大、穩定、可靠,適合長期運行和處理較高流量。
* **缺點:** 安裝和配置相對複雜,對於只是想快速分享一個 HTML 檔案來說,顯得有些「大材小用」。

* **Microsoft Internet Information Services (IIS)**:
* 這是 Microsoft Windows Server 作業系統內建的網頁伺服器。在 Windows NT/2000 時代就已廣泛使用。
* **實作方式:**
1. 在 Windows Server 上啟用 IIS 服務。
2. 透過 IIS 管理器設定網站、指定內容目錄。
3. 將 HTML 檔案放入指定目錄。
4. 啟動 IIS 服務。
* **優點:** 與 Windows 環境整合度高。
* **缺點:** 僅限於 Windows 環境,配置同樣需要一定的知識。

### 2. XAMPP/WAMP/MAMP 等整合包 (約 2000 年前後開始流行)

雖然這些整合包(將 Apache, MySQL, PHP/Perl 等打包在一起)在 Python 的簡易伺服器出現之前就已經存在,但它們的普及度在 2000 年代初期才真正爆發。它們的主要目的是簡化開發者在本地搭建開發環境的過程。

* **實作方式:**
1. 下載並安裝 XAMPP (跨平台)、WAMP (Windows) 或 MAMP (macOS)。
2. 啟動 Apache 服務(這些套件通常提供圖形介面一鍵啟動)。
3. 將 HTML 檔案放在其預設的網頁根目錄(如 `htdocs` 或 `www`)。
4. 其他電腦透過 IP 訪問。
* **優點:** 大大簡化了 Apache 的安裝和配置過程。
* **缺點:** 相對於 Python 的單行命令還是複雜一些,且通常包含很多你不需要的功能(如資料庫)。

### 3. 作業系統內建的簡易檔案共享 (不常見於網頁伺服)

有些作業系統可能提供非常基本的檔案共享功能,但這通常是基於 SMB/CIFS (Windows 檔案共享) 或 NFS (Unix/Linux 網路檔案系統) 協定,而不是 HTTP 協定。因此,瀏覽器無法直接通過 `http://` 訪問。這種方式更多用於共享檔案,而非架設網頁。

### 總結比較:

在 Python 內建簡易 HTTP 伺服器之前,如果要在區域網路內簡單地分享一個 HTML 檔案:

* **對於非技術人員**:幾乎沒有特別簡單、一鍵式的 HTTP 伺服器方案。他們可能需要尋求懂技術的人幫忙安裝配置 Apache 或 IIS。
* **對於開發者**:他們會直接在本地電腦安裝 Apache 或 IIS,並將其設定為開發環境。即便只是為了測試一個靜態 HTML,也需要走一遍完整的伺服器安裝流程。

因此,Python 的 `http.server` 模組(或其他類似的輕量級伺服器工具)的出現,對於快速、臨時性的本地 HTTP 服務,確實是極大的便利,因為它將一個相對複雜的任務簡化成了一行命令,這在 Netscape 時代是沒有的。那時,要麼就是跑一個「大」伺服器,要麼就是沒有。