JSP 頁面中 <base href="..."> 設置後,表單 action="user/user!add" 為何能正確解析為 https://localhost:8080/project/user/user!add?
<a>, <form>, <img>, <link>, <script> 等)指定基準 URL。<head> 中,全文檔僅生效一個。/ 開頭 → 相對於域名根(如 /user/add → https://host/user/add)。./ 或無前綴 → 相對於 <base> href 指定的目錄。https://) → 視為絕對路徑,忽略 base。<head>
<base href="https://localhost:8080/struts2015/">
</head>
<body>
<form action="user/user!add"> <!-- 實際提交到 https://localhost:8080/struts2015/user/user!add -->
<img src="images/logo.png"> <!-- 請求 https://localhost:8080/struts2015/images/logo.png -->
</body>
<base>,避免硬編碼。/api/...),不依賴 base。<base> 會影響錨點跳轉(#section),需在錨點前加完整路徑。