【Asp.net精品源码栏目提醒】:网学会员为广大网友收集整理了,网站建设及管理知识 - 其它资料,希望对大家有所帮助!
IIS 的安装与使用一、IIS 的安装 IIS(Internet 信息服务)是 windows 2003 的一个组件,提供 WEB 服务功能。
安装了 IIS 后,才 能创建网站,提供网页访问服务功能。
如何查看是否安装了 IIS? ,打开“计算机管理”程序;或者点击“开始菜单”-“所有程1. 在“我的电脑”上点右键,选择“管理” 序”-“管理工具”-“计算机管理”。
2. 在“计算机管理”中点击“服务和应用程序”左侧的号,展开。
查看其中是否有quotInternet 信息服务 IIS管理器 。
如上图所示的系统中,没有安装 IIS。
安装 IIS1. 点击“开始菜单”-“控制面板”-“添加或删除程序”2. 在弹出的“添加或删除程序”窗口中选择“添加/删除 Windows 组件”,会弹出“Windows 组件向导”。
在“Windows 组件”窗口中,拖动右侧的滚动条,选择下面的“应用程序服务器” 。
然后,点击“详细信息”,可以看到它包含的组件。
下图是应用程序服务器默认包含的组件,其中包含了 IIS,而 IIS 中又有一些子组件。
ASP.NET 组件
Asp.net 组件允许计算机运行
asp.net 应用程序。
.net 是微软公司的新一代程序语言,
asp.net 和 asp一样,为 WWW 网站提供服务端脚本运行功能。
如何知道 WWW 网站是否需要
asp.net 组件?
Asp.net 程序文件的扩展名是 aspx只要我们在网站文件中发现.aspx 扩展名的文件,这个网站就需要
asp.net 组件的支持。
同样,ASP 应用程序的扩展名是.asp,如果网站中包含.asp 扩展名的文件,就需要启用 IIS 里的 ASP组件。
Asp.net 和 asp 都是一种脚本语言,类似于批处理,嵌入在网页源代码中,在服务器端运行,运行结果直接返回给客户浏览器。
在浏览器上打开的网页中是看不到 asp 脚本的源代码的,只能看到 asp 脚本的运行结果。
IIS 组件 下面,我们来看一下 IIS 的详细信息 默认情况下,以下选项被勾选 Internet 信息服务管理器 公用文件 万维网服务 这些选项都是建立站点及管理站点所必须的,我们不用改动。
其它的选项一般情况下都是不常用的,不了解的就不要随意选择。
在上图中可以看到,最后一个选项是“文件传输协议FTP”服务,它提供了 FTP 服务器功能。
如果我们想架设 FTP 服务器的话,就要选择这一项。
万维网服务 万维网服务是 IIS 最重要的组件,默认情况下,只有万维网服务被选择。
而我们现在所使用的网站一般都使用 ASP 程序,所以我们还需要选择“Active Server Pages”选项,提供 ASP 脚本应用程序服务功能。
总结: 1. 如何使 Windows 2003 支持 asp 网站? 从控制面板中打开“添加/删除程序” ,选择“添加/删除 windows 组件”,勾选“应用程序服务器”点 ” 击详细信息,点击“Internet 信息服务(IIS),点击详细信息,点击“万维网服务” ,点击详细信息, 勾选“Active Server Pages”选项,点击确定,点击“下一步”安装 IIS。
2. 默认情况下,IIS 不支持 ASP 脚本语言,需要勾选“万维网服务”中的“Active Server Pages” 子组件。
3. 要使 IIS 支持
asp.net 脚本语言,需要选择“应用程序服务器”中的
Asp.net 组件 4. Asp 脚本语言程序的扩展名是.asp,
Asp.net 脚本语言程序的扩展名是.aspx. 5. Asp 和
asp.net 都是服务器运行的脚本语言,在浏览器中显示的网页源代码中只会显示 asp 脚本的运行结果,不会显示 asp 脚本的源代码。
6. 删除某项 IIS 组件,只要重新安装 IIS,去掉组件对应的勾号,继续安装就可以了。
静态文件和动态文件 网站中,直接发送给浏览器就可以使用的文件称为静态文件,静态文件只能被打开或下载,无法在服务器端运行。
一般 html 网页,jpeggif 图片文件,mp3zip 等文件,都属于静态文件。
动态文件只指可以在服务器端运行的文件,如 ASP 文件等。
动态文件在服务器端运行,将运行结果发送给客户浏览器。
客户端运行的脚本程序: 还有一种脚本程序是在客户端的浏览器中运行的,一般是以.js .vbs 扩展名,这种脚本直接在 IE 浏览器中运行。
管理 IIS IIS 管理器 ,展开“服务和应用程序”分支,就能看到 IIS 管理器。
在“我的电脑”上点右键,选择“计算机管理”也可以在“运行”里输入 inetmgr 回车,可以直接打开 IIS 管理器 . 从上图可以看到,IIS 管理器里包含了“应用程序池、网站、Web 服务器扩展quot三项 1.应用程序池 应用程序池为网站创建一个独立的运行环境。
每一个网站都需要指定一个应用程序池,多个网站可以共用一个应用程序池,也可以使用单独的应用程序池。
应用程序池可以删除,重建,不影响网站程序本身,只要在重建后为网站指定应用程序池就可以。
为了提高安全性、可靠性及性能,IIS 6.0 增加了应用程序池这一功能。
当多个网站共用一个应用程序池时,可以重复使用系统资源,提高了性能;当网站使用独立的应用程序池时,如果网站被攻击而崩溃也不会影响到其他网站。
2.网站 网站,就是 IIS 可管理的 WEB 站点。
可以有多个不同的网站。
网站的默认端口是 80,其他网站可以设置另外的端口。
可以为网站设置主机头值,让多个网站共用 80 端口。
主机头值,就是网站的域名。
3.Web 服务器扩展 Web 服务器扩展为 IIS 增加额外的功能。
如上图所示,ASP 组件就包含在 Web 服务器扩展中。
默认情况下,安装 IIS 时,ASP 组件也被安装,但是禁止的。
我们在前面手工安装 ASP 组件,实际上就是“允许”ASP 组件。
网站属性1 “网站”选项卡 描述:为网站设置一个名称,如果有多个网站,在 IIS 管理器的网站列表中可以清晰的区分。
IP 地址:网站所使用的 IP 地址,如果不指定就使用服务器所拥有的所有 IP 地址。
如果服务器上有多个 ,选择“默认值”网站,而且都使用 80 端口,就需要在这儿设置主机头。
点击“高级” ,在 ,点击“编辑”弹出的窗口中输入网站的域名,如下图。
还可以为网站输入域名和端口,都可以访问网站。
TCP 端口:访问网站所使用的端口,默认是 80。
使用 80 端口时,直接输入网址就可以访问网站。
当使用其它端口时,访问时需要加上端口号,如 http://test.rcjy.com.cn:8080/。
注意,要输入完整的 URL 地址,不能省略 http://和/。
连接超时:一般按默认设置就可以了。
超过设定的时间后,服务器会主动断开与客户端的连接。
当网站的访问人数过多时,连接超时设置过长会影响服务器性能,如果发现服务器内存占用过大,可以适当降低连接超时的时间。
日 志 记 录 : 日 志 对 维 护 IIS , 网 站 出 现 问 题 后 分 析 解 决 故 障 , 有 很 大 帮 助 。
日 志 默 认 保 存 在C:WINDOWSsystem32LogFiles 目录下,每个网站一个目录,目录名一般如 W3SVC1 这样的。
需要注意的是,对于访问数量较大的网站,IIS 日志会占用较大的磁盘空间,需要定期清理。
2.性能选项卡 “带宽限制”设置网站最多可使用的带宽, 性能选项卡中, “网站连接”设置可访问网站的最多连接数。
只有当网站的访问量非常大时,才需要设置。
3.ISAPI 筛选器 ISAPI 筛选器可以为 IIS 添加额外的功能,一些特殊的网站需要使用 ISAPI 筛选器。
一般安装网站时,会自动安装 ISAPI 筛选器。
添加成功后,ISAPI 筛选器列表中的筛选器显示绿色箭头。
如果是红色表示筛选器未正常运行。
当 ISAPI 筛选器不能正常运行时,检查 DLL 文件的权限,检查 Web 服务器扩展中是否有相应的 ISAPI 扩展并设为允许。
4.主目录 主目录是网站源代码所在的目录,目录下的文件都可以通过网站访问到。
网站所有的文件,如 html 网页,ASP 脚本,图片等都存放在主目录下。
在目录路径下方,有对主目录访问权限的设置,一般按默认就可以了。
如果网站主要用于静态文件下 “脚载,可以勾选“目录浏览”选项,这样访问网站时,就可以看到网站的目录及文件列表。
除非特别指定,本资源访问”和“写入”权限不要勾选。
“脚本资源访问”不是指可以运行 ASP 脚本程序,而是允许客户端 IE 下载查看 ASP 脚本
源码,这通常是不安全的。
“写入”权限也是针对客户端浏览器来说的。
应用程序名:一个标识,这儿设置的名称可以在 IIS 管理器的“应用程序池”列表中显示,区分不同的网站。
执行权限:除非特别指定,一般使用纯脚本。
可执行文件是指一些 CGI 及 ISAPI 文件,一般我们用不到。
应用程序池:这儿指定了网站所使用的应用程序池。
默认的,所有新建网站都使用 DefaultAppPool 应用程序池。
可以在 IIS 管理器的应用程序池中创建新的项目,并在这儿指定。
应用程序配置:点击“配置”按钮,打开应用程序配置窗口。
一般情况下,这里使用默认设置即可。
如果网站脚本运行出错,可以尝试勾选“启用父路径”,或将默认 ASP 语言改为 JavaScript. 5.文档 这儿主要设置网站的首页文件。
当我们访问一个网站时,如 www.rcjy.com.cn,实际上是访问的www.rcjy.com.cn/index.asp 文件,index.asp 就是 www.rcjy.com.cn 的首页文件。
首页文件名一般是 index.aspindex.html default.asp deufault.html 等6. 目录安全性 身份验证和访问控制:设置允许访问网站的用户,默认情况下,启用匿名访问,所有客户端使用内置的用户 IUSR_RCJY-GGT46I0QUI 访问网站。
这个用户是安装 Windows 2003 时,系统自动创建的。
网站所在的目录及文件需要允许此用户读的权限,客户端才能访问此网站。
集成 Windows 身份验证:勾选此项时,用户访问网站需要输入用户名和密码。
这里的用户就是windows 2003 的用户账号,用户名和密码可以在 windows 用户管理中创建。
7. HTTP 头和自定义错误HTTP 头选项卡中,可能用到的设置是“MIME 类型” 。
MIME 类型,类似于 windows 中通过扩展名识别出文件类型的方法,设置了 MIME 扩展名的文件,IIS 服务器会通知客户端浏览器打开的文件是何种类型,如rar 文件,就直接下载,视频文件就播放等。
因为 Windows 2003 中不支持 rmvb 和 flv 文件的 IIS 服务,如果网站中有这两种文件需要下载,就要在这儿进行设置。
设置如上图,注意扩展名前有.号。
类型写 application,这种类型的文件都可以下载。
Flv 文件可以使用video/x-flv。
详细的信息可以搜索”windows 2003 mime rmvb “或“rmvb mime”都可以找到。
自定义错误: 当客户端打开网页出错时显示的信息。
常见的错误有 404 文件找不到, 请求处理请求, 400 500内部服务器错误(通常是 ASP 等程序出错) 。
详细信息可以搜索“IIS 错误代码” 。
下载
源码,并创建一个网站演示1.网上常见的网站程序有两种打包的应用程序网站,按照说明书,直接运行 setup 安装即可。
下载后解压缩,就可以直接使用的
源码程序,这类程序最多,将重点介绍。
2.
源码网站的文件介绍搜索 ASP
源码网站,可以使用“
源码 asp”关键字搜索。
下载后的压缩包解开后,一般有以下几个文件及文件夹。
Index.asp 网站的首页文件Install.asp 有的
源码程序中包含了这个文件。
这表示,网站在 IIS 中发布后,需要在 IE 浏览器中打开install.asp,对网站进行设置。
设置完成后,install.asp 文件将被删除。
这类
源码,需要对照说明文档设置好相应文件和文件夹的权限。
Conn.asp 这个文件通常用于连接数据库Config.asp 这个文件一般用于保存网站的配置数据,或者是一个配置网站数据的 ASP 程序。
用记事本打开 config.asp如果看到里面是标准的 asp 和 html 语句,就表明这是一个配置程序。
如果是一些带有解释性的文本,就是用于保存配置数据的文本文件。
安装说明.txt 系统说明.txt 这些都是网站的说明文档Database 文件夹 用于保存网站的数据库,一般是 access 数据库。
Upload 文件夹 保存用户上传的文件,用户头像,发表的图片,上传的文件等Include 文件夹 这个文件夹保存网站频繁使用的 ASP 程序。
如例子中的 Conn.asp 和 Config.asp。
网站中每个页面都会使用的文件一般都放在这儿,如页眉,页脚显示的信息。
Images 文件夹 保存网站常用的图片,用户上传的头像、图片等也可能放在这儿。
Usr 文件夹 用户上传的文件,头像,图片等,一般每个用户一个子文件夹3.数据库免费的
源码程序一般使用 access 数据库, 当用户数及数据量较大时需要使用 mssql 数据库。
Access 数据库的扩展名是 mdb有的网站程序为了防止下载,将数据库扩展名更改为 asp,这不影响使用。
MSSQL 数据库一般有两个文件,扩展名分别为 mdf 和 ldf。
其中 ldf 是数据库的日志文件。
4.创建网站将下载的压缩包解开,复制到 D 盘。
一般不要放在 C 盘,防止硬盘空间不足。
在 IIS 中创建网站,并将主目录指向
源码所在的路径。
5.设置权限如何设置 Web 服务器的权限?如果 Web 服务器的权限没有设置好,那么网站就会出现漏洞并且很可能会出现被不怀好意的人黑掉的情况。
我们不应该把这归咎于 IIS 的不安全。
如果对站点的每个目录都配以正确的权限,出现漏洞被人黑掉的机会还是很小的(Web 应用程序本身有问题和通过其它方式入侵黑掉服务器的除外)。
下面是我在配置过程中总结的一些经验,希望对大家有所帮助。
IIS Web 服务器的权限设置有两个地方,一个是 NTFS 文件系统本身的权限设置,另一个是 IIS 下网站-gt站点-gt属性-gt主目录(或站点下目录-gt属性-gt目录)面板上。
这两个地方是密切相关的。
下面以实例的方式来讲解如何设置权限。
IIS 下网站-gt站点-gt属性-gt主目录(或站点下目录-gt属性-gt目录)面板上有:脚本资源访问读取写入浏览记录访问索引资源 6 个选项。
这 6 个选项中,“记录访问”和“索引资源”跟安全性关系不大,一般都设置。
但是如果前面四个权限都没有设置的话,这两个权限也没有必要设置。
在设置权限时,记住这个规则即可,后面的例子中不再特别说明这两个权限的设置。
另外在这 6 个选项下面的执行权限下拉列表中还有:无纯脚本纯脚本和可执行程序3 个选项。
而网站目录如果在 NTFS 分区(推荐用这种)的话,还需要对 NTFS 分区上的这个目录设置相应权限,许多地方都介绍设置 everyone 的权限,实际上这是不好的,其实只要设置好 Internet 来宾帐号(IUSR_xxxxxxx)或IIS_WPG 组的帐号权限就可以了。
如果是设置 ASP、PHP 程序的目录权限,那么设置 Internet 来宾帐号的权限,而对于
ASP.NET 程序,则需要设置 IIS_WPG 组的帐号权限。
在后面提到 NTFS 权限设置时会明确指出,没有明确指出的都是指设置 IIS 属性面板上的权限。
例1 —— ASP、PHP、
ASP.NET 程序所在目录的权限设置: 如果这些程序是要执行的,那么需要设置“读取”权限,并且设置执行权限为“纯脚本”。
不要设置“写入”和“脚本资源访问”,更不要设置执行权限为“纯脚本和可执行程序”。
NTFS 权限中不要给 IIS_WPG 用户组和 ,Internet 来宾帐号设置写和修改权限。
如果有一些特殊的配置文件(而且配置文件本身也是 ASP、PHP 程序)则需要给这些特定的文件配置 NTFS 权限中的 Internet 来宾帐号(
ASP.NET 程序是 IIS_WPG 组)的写权限,而不要配置 IIS 属性面板中的“写入”权限。
IIS 面板中的“写入”权限实际上是对 HTTP PUT 指令的处理,对于普通网站,一般情况下这个权限是不打开的。
IIS 面板中的“脚本资源访问”不是指可以执行脚本的权限,而是指可以访问源代码的权限,如果同时又打开“写入”权限的话,那么就非常危险了。
执行权限中“纯脚本和可执行程序”权限可以执行任意程序,包括 exe 可执行程序,如果目录同时有“写入”权限的话,那么就很容易被人上传并执行木马程序了。
对于
ASP.NET 程序的目录,许多人喜欢在文件系统中设置成 Web 共享,实际上这是没有必要的。
只需要在 IIS中保证该目录为一个应用程序即可。
如果所在目录在 IIS 中不是一个应用程序目录,只需要在其属性-gt目录面板中应用程序设置部分点创建就可以了。
Web 共享会给其更多权限,可能会造成不安全因素。
总结: 也就是说一般不要打开-主目录-写入脚本资源访问 这两项以及不要选上纯脚本和可执行程序选纯脚本就可以了.需要
asp.net 的应用程序的如果应用程序目录不止应用程序一个程序的可以在应用程序文件夹上属性-目录-点创建就可以了.不要在文件夹上选 web 共享.例2 —— 上传目录的权限设置: 用户的网站上可能会设置一个或几个目录允许上传文件,上传的方式一般是通过 ASP、PHP、
ASP.NET 等程序来完成。
这时需要注意,一定要将上传目录的执行权限设为“无”,这样即使上传了 ASP、PHP 等脚本程序或者exe 程序,也不会在用户浏览器里就触发执行。
同样,如果不需要用户用 PUT 指令上传,那么不要打开该上传目录的“写入”权限。
而应该设置 NTFS 权限中的 Internet 来宾帐号(
ASP.NET 程序的上传目录是 IIS_WPG 组)的写权限。
如果下载时,是通过程序读取文件内容然后再转发给用户的话,那么连“读取”权限也不要设置。
这样可以保证用户上传的文件只能被程序中已授权的用户所下载。
而不是知道文件存放目录的用户所下载。
“浏览”权限也不要打开,除非你就是希望用户可以浏览你的上传目录,并可以选择自己想要下载的东西。
总结: 一般的一些 asp.php 等程序都有一个上传目录.比如论坛.他们继承了上面的属性可以运行脚本的.我们应该将这些目录从新设置一下属性.将纯脚本改成无.例3 —— Access 数据库所在目录的权限设置: 许多 IIS 用户常常采用将 Access 数据库改名(改为 asp 或者 aspx 后缀等)或者放在发布目录之外的方法来避免浏览者下载它们的 Access 数据库。
而实际上,这是不必要的。
其实只需要将 Access 所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了。
你不必担心这样你的程序会无法读取和写入你的 Access 数据库。
你的程序需要的是 NTFS 上 Internet 来宾帐号或 IIS_WPG 组帐号的权限,你只要将这些用户的权限设置为可读可写就完全可以保证你的程序能够正确运行了。
总结: Internet 来宾帐号或 IIS_WPG 组帐号的权限可读可写.那么 Access 所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了例4 —— 其它目录的权限设置: 你的网站下可能还有纯图片目录、纯 html 模版目录、纯客户端 js 文件目录或者样式表目录等,这些目录只需要设置“读取”权限即可,执行权限设成“无”即可。
其它权限一概不需要设置。
上面的几个例子已经包含了大部分情况下的权限设置,只要掌握了设置的基本原理,也就很容易地完成能其它情况下的权限设置。
在示例网站中,需要设置的权限如下:NTFS 文件夹相关权限网站根目录 school Internet 来宾用户,读取权限数据库目录 database Internet 来宾用户,修改权限用户上传目录 upload Internet 来宾用户,修改权限配置文件 include/config.asp Internet 来宾用户,修改权限网站目录属性设置School 读取,执行权限-纯脚本Database 取消读取权限,执行权限-无Uploadimages 读取,执行权限-无权限的相关说明:NTFS 文件夹权限中, 修改权限包含了读取运行列出目录写入。
允许脚本执行是在网站目录属性里的执行权限里设置,所以根目录的 NTFS 权限不需要“运行”。
Database 目录包含数据库,不希望用户下载,所以在网站目录属性中取消读取权限,这样用户就无法下载,但 NTFS 目录的读取权限不能取消。
测试网站,排除错误网站架设好后,在 IE 浏览器中打开首页,测试。
如果服务器上有多个网站并使用相同端口,就需要使用域名来访问网站。
如果域名未注册,可以修改 XP 设置,在本机实现域名访问。
打开 C:windowssystem32driversetchosts 文件,在最后添加一行192.168.128.128 www.z.com 这样就可以使用域名访问网站。
这种方法,只能在本机使用。
其它电脑上无法使用这个域名。
错误提示 1您未被授权查看该页您试图访问的 URL 安装有 ISAPI 或 CGI 应用程序,在继续执行之前对用户凭据进行验证。
该应用程序无法验证您的凭据。
请尝试以下操作: 如果您认为.
上一篇:
【精品】01ASP教程01
下一篇:
论莫泊桑中短篇小说女权主义思想的表现方式