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 時代是沒有的。那時,要麼就是跑一個「大」伺服器,要麼就是沒有。 |
Direct link: https://paste.plurk.com/show/sT8nLA8dRzmODkyF1IuA