1. 程式人生 > >WEB-INF目錄防止通過URL直接訪問

WEB-INF目錄防止通過URL直接訪問

WEB-INF是Java的web應用安全目錄,只對服務端開放,對客戶端是不可見的。所以我們可以把除首頁(index.jsp)以外的頁面都放在WEB-INF目錄下,這樣就無法通過URL直接訪問頁面了。web-inf目錄是不對外開放的,外部沒辦法直接訪問到(即不能通過URL訪問)。所有隻能通過對映來訪問,比如對映為一個action或者servlet通過伺服器端跳轉來訪問到具體的頁面。這樣可以限制訪問,提高安全性.

             

1、把頁面資原始檔只能放在webroot下面,如 CSS,JS,image等.放在WEB-INF下引用不了

2、只能用轉向方式來訪問WEB-INF目錄下的JSP,不用採用重定向的方式請求該目錄裡面的任何資源。

       重定向方式: 如struts-config檔案中配置<forward name="success" path="/WEB-INF/main.jsp" redirect="true"/>

       或在action中response.sendRedirect("/error.jsp");                    

重定向的含義就是伺服器把地址發給客戶端,讓客戶端去訪問.這種辦法顯然針對WEB-INF目錄是無用功.

3、WEB-INF目錄下檔案訪問資原始檔時,可以忽略WEB-INF這一層目錄。如index.jsp 要用css目錄裡的一個css檔案.     <link rel="stylesheet" type="text/css" href="css/**.css

 " />這樣就行了,從客戶端的地址可以看出來伺服器轉向index.jsp就是在webroot下面.所以index.jsp和css目錄可以講是同一級目錄。

4、WEB-INF目錄下的檔案之間如何訪問呢。

(1)方式一:

  在main.jsp用   <a href="oa.do ">測試OA的路徑</a>

      或者

<jsp:forward page ="/WEB-INF/jsp/test/test.jsp" />


(2)方式二:在action類中或者struts.xml中

  如果main.jsp有很多處連結到WEB-INF目錄下的其它頁面.那就得有10個轉向Action。這個可以用DispatchAction類加引數專門處理轉向工作。

request.getRequestDispatcher("/WEB-INF /main.jsp").forward(request, response);

在struts-config檔案中配置 

<forward name="success" path="/WEB-INF/main.jsp" /> 

  這都是伺服器讀取了該頁面內容,併發送到客戶端.客戶端的地址不變.內容跳轉了。

相關推薦

WEB-INF目錄防止通過URL直接訪問

WEB-INF是Java的web應用安全目錄,只對服務端開放,對客戶端是不可見的。所以我們可以把除首頁(index.jsp)以外的頁面都放在WEB-INF目錄下,這樣就無法通過URL直接訪問頁面了。web-inf目錄是不對外開放的,外部沒辦法直接訪問到(即不能通過URL訪

WEB-INF目錄防止通過URL直接訪問頁面

       WEB-INF是Java的web應用安全目錄,只對服務端開放,對客戶端是不可見的。所以我們可以把除首頁(index.jsp)以外的頁面都放在WEB-INF目錄下,這樣就無法通過URL直接

防盜鏈——防止其他頁面通過url直接訪問本站資源

防盜鏈產生效果描述: 在頁面中引入一個連結,在頁面中點選訪問這個連結(注:直接頁面通過瀏覽器開啟是無效的,需要通過伺服器訪問頁面) 而通過位址列與直接開啟頁面(不通過伺服器)直接訪問是返回正常的頁面。 看到這裡也許你也猜到了這應該是跳轉頁面的後臺做的訪問限

禁止通過 url直接訪問

Request.UrlReferrer可以獲取客戶端上次請求的url的有關資訊。  這樣我們就可以通過這個屬性返回到“上一頁”,示例如下     1.首先在Page_load中獲得並儲存該資訊 Pa

Tomcat WEB-INF目錄下的檔案無法直接訪問

    今天在寫一個小專案是遇到一個問題。就是瀏覽器無法直接訪問Tomcat WEB-INF目錄下的檔案。 專案如下: 其中index.jsp程式碼如下: <body> <jsp:forward page="/WEB-INF/Interfa

關於WEB-INF目錄下無法訪問webapp下的css等靜態文件

訪問 static class sharp sco 靜態文件 ext 輸出 pos <!-- 輸出為項目根目錄,即webapp--> <c:set value="${pageContext.request.contextPath}" var="p

SpringBoot WEB-INF目錄下檔案無法訪問一種解決方案

平時都好用的百度 沒搜尋到直接的解決方案,查閱資料提供一種方案  實驗可行 廢話不多說 上圖專案index.html位置  至於為什麼將資源放在WEB-INF目錄下  是不是更安全? 如果你怎麼也訪問不到 ,不妨試試我想到的方法 這是我的控制器寫法 直接request物

網頁中怎樣禁止通過輸入url直接訪問

通常的做法是這樣的:在登入頁(比如說是login.asp)登陸成功後,要把登陸成功的狀態賦值給一個Session變數,比如 Session("login")="OK",然後在除登入頁之外的其他頁面的開頭都檢測這個Session變數的值,不是登入狀態即立刻強制跳轉到登入頁面,

JavaEE專案在WEB-INF目錄下的jsp頁面如何訪問WebRoot中的CSS和JS文

寫專案為了訪問安全問題,將jsp頁面放在WEB-INF下,卻訪問不到樣式檔案。試了很多方法,以下可行好用: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncodi

jsp訪問WEB-INF目錄下面的jsp檔案

我想通過超連結在jsp頁面訪問WEB-INF目錄下面的main.jsp檔案,如何做呢? --------------------------------------------------------------------------------------------

oa系統禁止使用者直接通過url訪問的頁面

/** * @author chenfeng * 登陸系統攔截器,驗證登陸 */ public class LoginInterceptor implements HandlerInterceptor { private static Logger logge

禁止通過ip直接訪問網站來防止惡意解析-(apache,nginx,iis)

一、IIS 禁止IP直接訪問 首先就是開啟IIS管理器之後,在IIS管理器左側找到網站下面的相應網站,右鍵選擇開啟該網站屬性,進入相關IIS網站屬性設定。  (IIS開啟網站屬性方法)在網站屬性視窗中的預設“網站”選項卡中找到並單擊“高階”,如下圖所示。 

所有的jsp頁面都放到WEB-INF目錄

目的 ref 而已 b- 跳轉 jsp 控制 test bsp 把所有的jsp頁面都放到WEB-INF目錄 目錄結構大概是這樣: WEB-INF/jsps/test下有一個b.jsp WEB-INF/jsps下有一個a.jsp a.jsp中有一個鏈接<a hr

解決/WEB-INF目錄下的jsp頁面引入webRoot下的Js、css和圖片的問題

type ref 引入 即使 處理 back round tex 定位 轉自:http://blog.csdn.net/qq_18875541/article/details/69390871 通常把jsp頁面放在webRoot的/WEB-INF下可以防止訪問者直接輸入

關於sso單點登錄以及通過路徑直接訪問Servlet

split 指定 direct cep 關於 package gin TP array 1.單點登錄代碼 package cn.sunline.filter; import java.io.IOException; import javax.servlet.Filter

java獲取WEB INF目錄絕對路徑

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

WEB-INF目錄

一、WEB-INF是Java的WEB應用的安全目錄,只能通過服務端訪問(servlet,controller或action之類的)。 1、servlet跳轉web-inf目錄下的頁面 //重定向(url改變,不能傳遞引數) response.sendRedirect("/WEB-INF/in

web專案開發下WEB-INF目錄使用的注意事項

在web專案中,為了安全,可能需要把jsp、html等頁面檔案放在WEB-INF目錄下,這樣如果我們的頁面中出現超連結<a>標籤或者<script></script>指令碼下的location.href去直接轉向到WEB-INF下的某一個jsp或者html頁面,那

springboot通過url地址訪問專案外部檔案的配置

1 新增配置類 package com.ps.learn.socketio.config; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotat

1.IFRAME框架中載入的頁面 禁止URL直接訪問

1.在jsp頁面 會使用許多的iframe,使用者可以F12知道 選單的url路徑,然後可以直接URL訪問,或者修改IFRAME中的src地址。這個時候有兩種方法禁止直接訪問iframe的內容,首先是js載入時候禁止,/*    * 只允許,同一域名下IFRAME 凨來了