我正在將我的網站移動到一個新的服務器,原來是在http://www.jthink.net,新的暫時在https://test.jthink.net這暴露了我的網頁有http:/ /www.jthink.net頁眉和頁腳中的硬編碼。
該網站主要由jsp頁面組成,建議我移動到相對鏈接,但這不起作用,因為標題包含在每個頁面中
<%@包含檔案="/layout/inc/pagestart.jsp" %>
并且網頁可能在級別上有所不同,因此如果它們共享標題相對路徑將僅適用于具有相同級別檔案夾結構的頁面。
http://www.jthink.net/songkong/en/index.jsp
http://www.jthink.net/songkong/index.jsp
所以我需要使用絕對鏈接而不是將其硬編碼到www.jthink.net或 test.jthink.net 以便我可以在任何一個頁面上使用相同的頁面。
所以我試過了
<link rel="icon" href="<%=request.getServerName()%>/songkong/images/songkong32.png" type="image/png" />
但決心
<link rel="icon" href="test.jthink.net/songkong/images/songkong32.png" type="image/png" />
并沒有作業
所以我然后嘗試
<link rel="icon" href="https://<%=request.getServerName()%>/songkong/images/songkong32.png" type="image/png" />
但這是硬編碼 https,因此不適用于現有網站。
請問這樣做的正確方法是什么?
uj5u.com熱心網友回復:
解決方案是使用服務器相關鏈接,如果 url 以單個 / 開頭,該 / 決議為當前服務器的協議和名稱。
例如,如果在http://www.example.net/index.jsp頁面上,/ 的 url 表示http://www.example.net/,而如果在https://www.example.net/index頁面上。 JSP /的URL將意味著HTTPS://www.example.net/
我認為重要的是要注意此處與相對鏈接的區別,因為它令人困惑。我之前被推薦使用相對鏈接,但我認為相對鏈接是以..(意思是父目錄)或. (意思是當前目錄)就像在 unix 上一樣,這些都不好,因為根據您在服務器上的頁面,可以獲得不同的結果
例如
如果在頁面http://www.example.net/index.jsp 上的 .. url 表示http://www.example.net/,而如果在頁面http://www.example.net/test/ index.jsp .. 的 url 表示http://www.example.net/test
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/318170.html
