在 Windows Server 2003 + IIS 6.0 上跑 JSP,傳統做法是整合 Tomcat + ISAPI Redirector,配置繁瑣且易出錯。ServletExec 是一款輕量級 Servlet/JSP 引擎,安裝程式自動完成 IIS 映射、虛擬目錄、應用程式集區設定,免費版即可滿足開發/測試/輕量生產需求。本文實測記錄從下載到部署的全流程。
JAVA_HOMEhttps://www.servletexec.com → 註冊帳號(需有效 Email 收授權碼)~15 MB)/servletexec、ISAPI 映射 *.jsp、*.servlet瀏覽器開啟:https://localhost/servletexec/admin
預設帳號:admin / 密碼:安裝時設定或郵件收到的授權碼
Application Name:MyAppURL Context Path:/myapp/ (結尾必須有 /)Location:D:\webapps\myapp (實體目錄)/api/*WEB-INF/web.xml,ServletExec 會自動掃描建立 D:\webapps\myapp\hello.jsp:
<%@ page contentType="text/html;charset=UTF-8" %>
<html><body>
<h1>Hello from ServletExec on IIS 6.0!</h1>
當前時間:<%= new java.util.Date() %>
</body></html>
瀏覽 https://localhost/myapp/hello.jsp 應正常顯示。
| 功能 | 免費版 | 付費版 (Professional/Enterprise) |
|---|---|---|
| JSP/Servlet 支援 | 完整 | 完整 |
| 連線數/執行緒 | 限制較低 | 無限制、連線池優化 |
| 負載均衡/叢集 | 不支援 | 支援 |
| 熱部署/類別重載 | 手動 | 自動 |
| 技術支援 | 社群 | SLA |
| 現象 | 原因 | 解決 |
|---|---|---|
| 404 / 500 | Context Path 未以 / 結尾或目錄權限不足 | 修正 Path、給 IUSR/IIS_WPG 讀取/執行權限 |
| ClassNotFoundException | 類別檔未放在 WEB-INF/classes 或 lib/*.jar | 調整目錄結構、重啟 Web Application |
| 中文亂碼 | JSP 未指定 pageEncoding / web.xml 缺 filter | 加 <%@ page pageEncoding="UTF-8" %> 或配置 CharacterEncodingFilter |
| 安裝後 IIS 停止回應 | ISAPI 篩選器衝突或應用程式集區身分識別錯誤 | 檢查事件檢視器、確認集區用 NetworkService 或自訂帳號 |
ServletExec 適合:
長期/高併發/微服務架構,請規劃遷移至 Tomcat 9/10 + Nginx 反向代理 或 Spring Boot 內嵌容器 + Kubernetes,獲得完整生態與彈性擴縮能力。
域名反向解析 (PTR 記錄) 查詢與設定完整教學:nslookup 實戰指南
Linux 郵件伺服器完整配置指南:SMTP 與 POP3 服務啟用與故障排除
Nginx 入門教學:Location、Rewrite、Redirect、防盜鏈、快取與存取控制實戰語法
Windows 2003 + IIS 6 + PHP 5 出現 HTTP 401.3 錯誤解決:PHP 目錄權限授權指南
IIS Web 伺服器加鎖實戰:IIS Lockdown 2.1 完整部署指南
IIS 6.0 目錄解析漏洞(副檔名欺騙)三大防禦策略深度解析
三大虛擬化平台深度對決:VMware vSphere、Microsoft Hyper-V、Citrix XenServer 誰是您的最佳拍檔?