全局文件,错误页,静态页,IIS配置及防黑

 添加全局应用程序类。

<%@ Application Language="C#" %>

<script runat="server">
    //整个网站第一次被访问的时候调用
    void Application_Start(object sender, EventArgs e)
    {
        //在应用程序启动时运行的代码
        Application.Lock();
        Application["web"] = "welcome";
        Application.UnLock();

    }
    //整个网站关闭的时候
    void Application_End(object sender, EventArgs e)
    {
        //在应用程序关闭时运行的代码

    }
    //整站的一个通用的异常处理事件
    void Application_Error(object sender, EventArgs e)
    {
        //在出现未处理的错误时运行的代码

    }
    //每次创建session时调用
    void Session_Start(object sender, EventArgs e)
    {
        //在新会话启动时运行的代码
        Application.Lock();
        Application["logtime"] = DateTime.Now.ToString();
        Application.UnLock();
    }
    //每一个session对象被销毁时调用
    void Session_End(object sender, EventArgs e)
    {
        //在会话结束时运行的代码。
        // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
        // InProc 时,才会引发 Session_End 事件。如果会话模式
        //设置为 StateServer 或 SQLServer,则不会引发该事件。
        Application.Lock();
        Application["logtime"] = "goodbye";
        Application.UnLock();
    }

</script>

 错误页:

 配置web.config,配置customErrors区域:
 <customErrors mode="On" defaultRedirect="MyErrorPage.aspx">
 <error statusCode="403" redirect="NoAccess.htm" />
 <error statusCode="404" redirect="FileNotFound.htm" />
 </customErrors>
 mode三个可选值:On:总是显示定制错误页面;Off:不显示定制错误界面,直接显示调用堆栈等异常信息;remoteonly:对于本机的访问显示调用堆栈等异常信息,对于外部用户的显示定制错误页面。可以在定义错误页中判断Request.UserHostAddress来设置某些ip看到异常信息,可以读取Session如果是管理员则可以看异常信息。error子元素设定对于不同的状态码使用不同的错误页,很多网站都把404做一个特殊的错误页。没有单独设置的状态码错误则显示defaultRedirect中指定的页面。

 错误页即可以使用htm页面,也可以使用aspx页面。在aspx页面中可以用HttpContext.Current.Server.GetLastError()拿到异常对象。如果要在错误页面中拿到异常对象,比如customErrors中设置redirectMode="ResponseRewrite",因为默认是客户端重定向,在错误页面中就拿不到异常对象了。

  静态页:1、读取静态页字符串;2、从数据库读取某条新闻信息;3、将数据库查出的信息,对应替换到HTML代码中对应的占位符处(Replace);4、将替换后生成的HTML代码保存到一个按规则产生文件名的HTML文件中,并将此文件名更新到数据库对应的新闻中。

 IIS配置及防黑:
 安装IIS。部署网站(发布或者拷贝都可以)。修改连接字符串,compilation设为false,删掉cs代码
 上传文件夹不给执行权限: 在iis管理器中找到上传文件夹,选择属性--执行权限,设置为“无”。这样哪怕利用漏洞上传了可执行代码到上传文件夹,也无法执行。
 取消所有文件夹的浏览权限,防止用户查看网站的文件列表,在iis管理器中找到主站节点→属性→主目录→取消“目录浏览”。
 后台文件夹只允许管理员的IP访问,文件夹→属性→
 IIS管理中,Web服务器扩展,只允许asp.net那几个,其他的CGI、ASP等全部禁止。

时间: 2024-10-26 15:55:08

全局文件,错误页,静态页,IIS配置及防黑的相关文章

IIS配置及防黑

安装IIS.部署网站(发布或者拷贝都可以).修改连接字符串,compilation设为false,删掉cs代码 上传文件夹不给执行权限: 在iis管理器中找到上传文件夹,选择属性--执行权限,设置为“无” 这样哪 利用漏洞上传了可执行代码到上传文件夹,也无法执行 取消所有文件夹的浏览权限,防止用户查看网站的文件列表,在iis管理器中找到主站节点→属性→主目录→取消“目录浏览”后台文件夹只允许管理员的IP访问,文件夹→属性→ IIS管理中,Web服务器扩展,只允许asp.net那几个,其他的 CG

IIS7 大文件上传 asp.net iis配置

IS6下上传大文件没有问题,但是迁移到IIS7下面,上传大文件时,出现HTTP 404错误. IIS配置上传大小,webconfig <!-- 配置允许上传大小 --><httpRuntime maxRequestLength="1997151"  useFullyQualifiedRedirectUrl="true" minFreeThreads="8"         minLocalRequestFreeThreads=&

ThinkPHP生成静态页buildHtml方法

原来ThinkPHP自带了生成静态页的函数buildHtml,使用起来很方便!最新的手册里没写这个方法,向大家介绍一下. PHP 1 2 3 4 5 6 7 8 9 10 11 protected function buildHtml($htmlfile='',$htmlpath='',$templateFile='') { $content = $this->fetch($templateFile); $htmlpath   = !empty($htmlpath)?$htmlpath:HTML

MVC自定义错误页404静态页

昨天公司要求给所有项目添加自定义404错误页,具体的要求实现的有以下几点: 1.实现自定义错误(如各种error,404等)跳转到指定的页面 2.所指定的页面输出的http状态值必须是404或其他指定的statecode 3.跳转到的自定义错误页面必须是.html后缀结尾 关于第一点,这个很简单,大家都知道,只需要在webconfig里面对customErrors节点作相应设置,如下 <customErrors mode="On" defaultRedirect="Er

生成静态页技术

概要: 1.什么是生成静态页技术? 答:互联网上流行的做法是将数据源代码写入数据库再从数据库读取生成静态面,这样无形间就加大了数据库.将现有的ASP页直接生成静态页,将会节省很多. 2.为什么要生成静态页以及好处? 答:一.加快页面打开浏览速度,静态页面无需连接数据库打开速度较动态页面有明 显提高: 二.有利于搜索引擎优化SEO,Baidu.Google都会优先收录静态页面,不仅被收录的快还收录的全: 三.减轻服务器负担,浏览网页无需调用系统数据库: 四.网站更安全,HTML页面不会受Asp相关

thinkphp全站静态页实现方法!

1:在根目录下的全局index.php中加下面这行: define('HTML_PATH', './htm');//生成静态页面的文件位置 2:在项目的配置文件config.php中加下面这行: 'HTML_FILE_SUFFIX' => '.html',// 默认静态文件后缀 3:在需要生成静态页的action里加入下面显红的代码 public function view(){$wheres = "id = $_GET[id]";$news = $this->news-&

PHPCMS 详情页静态化

<?php defined('IN_PHPCMS') or exit('No permission resources.'); pc_base::load_app_class('admin','admin',0); class game extends admin { public function __construct() { parent::__construct(); $this->game = pc_base::load_model('game_model'); $this->

(转)discuz教程:制作网站模板前必须了解的界面结构(页头页尾模板文件)

页头文件路径:template/default/common/header.htm header.htm文件二次加载的文件有: template/default/common/header_common.htm 全局公共文件     |--该文件中包含了页面TITLE,对浏览器的申明,以及全局必须存在的基本代码,所以不建议新手修改此文件 template/default/common/header_diy.htm DIY模式时加载的DIY浮层菜单template/default/common/m

NET MVC RazorEngine 解析模板生成静态页

ASP.NET MVC 解析模板生成静态页一(RazorEngine) 简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法与.NET Framework 结合,广泛应用于ASP.NET MVC 项目. 我们在很多项目开发中会常常用到页面静态化,页面静态化有许多方式,最常见的就是类似很多PHP CMS种使用的 标签替换的方式(如:帝国CMS.EcSh