推薦:防範腳本入侵,你做好準備了嗎?作為網絡管理員,不少朋友也同時負責單位的網站開發維護的工作,對於WEB開發我想大家都比較精通,可是對如何編寫安全的腳本代碼和入侵者如何通過WEB方式對服務器進行滲透的,可能就不是很清楚了
1、在Asp頁面首部<head>加入
| 以下為引用的內容: Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Response.CacheControl = no-cache Response.AddHeader Pragma, No-Cache |
2、在HtML代碼中加入
| 以下為引用的內容: <HEAD> <META HTTP-EQUIV=Pragma CONTENT=no-cache> <META HTTP-EQUIV=Cache-Control CONTENT=no-cache> <META HTTP-EQUIV=Expires CONTENT=0> </HEAD> |
3、在重新調用原頁面的時候在給頁面傳一個參數Href=****.asp?random()
前兩個方法據說有時會失效,而第三種則是在跳轉時傳一個隨機的參數! 因為aspx的緩存是與參數相關的,如果參數不同就不會使用緩存,而會重新生成頁面,每次都傳一個隨機的參數就可以避免使用緩存。這個僅適用於asp&asp.net
4、在jsp頁面中可使用如下代碼實現無緩存:
| 以下為引用的內容: response.setHeader(Cache-Control,no-cache); //HTTP 1.1 response.setHeader(Pragma,no-cache); //HTTP 1.0 response.setDateHeader (Expires, 0); //prevents caching at the proxy server |
這些代碼加在<head> </head>中間具體如下
| 以下為引用的內容: <head> <% response.setHeader(Cache-Control,no-cache); //HTTP 1.1 response.setHeader(Pragma,no-cache); //HTTP 1.0 response.setDateHeader (Expires, 0); //prevents caching at the proxy server %> </head> |
5、window.location.replace(WebForm1.aspx);
參數就是你要覆蓋的頁面,replace的原理就是用當前頁面替換掉replace參數指定的頁面。
這樣可以防止用戶點擊back鍵。使用的是javascript腳本,舉例如下:
| 以下為引用的內容: a.html <html> <head> <title>a</title> <script language=javascript> function jump(){ window.location.replace(b.html); } </script> </head> <body> <a href=javascript:jump()>b</a> </body> </html> b.html <html> <head> <title>b</title> <script language=javascript> function jump(){ window.location.replace(a.html); } </script> </head> <body> <a href=javascript:jump()>a</a> </body> </html> |
前4種只是清空了cache,即存儲在Temporary Internet Files文件夾中的臨時文件,而第五種則是使用跳轉頁面文件替換當前頁面文件,並沒有清空cache,也就是說Temporary Internet Files產生了相關的臨時文件,兩者搭配使用真是清空緩存,必備良藥。正好我這裡有了記錄,所以常來看看哦。
分享:ASP 3.0高級編程(四十四)第10章ASP與客戶端數據在一本ASP專著中討論客戶端數據,這與服務器端的ASP編程是否矛盾?情況並非如此,因為我們至今尚未碰到只從事服務器端編程的ASP程序員。雖然ASP是一項服務器端技術,但