作为一个身处 2008 年末的 Web 设计师,你是否好意思承认自己的代码中使用了 Table,如果是,你是一个有勇气的人,Web 设计是个奇怪的行业,你可以将自己的网站设计得像晚报的分类广告,或者楼道里的开锁广告,但千万别让人知道你使用了 Table,在你的源代码中发现 Table 就像一个销售被人掀起裤脚发现穿了白袜子一样。
Table 是如此丑陋,臃肿,哪怕只显示一段简单的内容,你也需要 <table><tr><td> 这三个基本的标签,每个标签里面还要加上一堆乱七八糟的属性,不像<div>, 既简单,又整洁,又时尚,它和 CSS 珠联璧合,琴瑟和谐,它们构成最完美的 Box 模型,他们象现实中的箱子,你把东西放进去,然后,很自由地对他们进行排列,厌烦了一种布局,没关系,简单地改动一下 CSS 定义,一种全新的布局便诞生了;不象 Table,Table 像食堂里的餐具柜,一排排,一列列,土里土气,油腻腻的,象我们的父辈,邋遢,什么都往家里拿,胡乱堆在角落里,如果 Div 是小资,Table 就是老三届,他们不属于这个时代。
也就是近几年的事,至多不过三五年,W3C是一个人人都认为重要但人人都不喜欢的组织,他们的官方网站十分丑陋,我敢说平生没见过这么丑陋的网站, 但他们的网站是为数不多的可以通过全部W3C标准验证的网站,这意味着,他们的网站在语法上,在结构上,在可访问性上是完美的,虽然依旧十分丑陋。不过这 是笑谈,W3C非常重要,否则微软会把全体 Web 开发工程师带到万劫不复的境地,还好,Netscape 死后,涅磐出 Firefox,而 Opera 在 Firefox 横空出世之后虽然没得到任何好处,至少得到了精神上的支持,看到没,终于有大哥出来收拾你。乔布斯复出后,苹果重返昔日的光芒,这时人们才知道世界上还有 一个叫做 Safari 的浏览器,所有这一切加在一起,让 W3C 真正有了存在的必要。
W3C 说,Table 可以用来容纳文字,格式文字,图片,链接,表单,以及其它 Table ... 但是,Table 不应该单纯用来做网页布局(Tables should not be used purely as a means to layout document content),理由是,当 Web 被非可视化设备渲染的时候,Table 会出现问题,他们指定是屏幕阅读器以及盲文浏览器,另外,Table 在大型显示设备上会强迫用户左右滚动,因此,Web 设计者应该使用 CSS 而不是 Table。参见 W3C HTML 4.01 关于 Table 的定义。 W3C 说这段话的时候,是1999年12月24日,那时尽管 CSS 早已诞生,但并没有多少人使用,最初的 Web 像一个在线版的文档,并没有成为现在这样的平台,不需要过多过多地考虑布局问题,随着互联网第一次泡沫的形成,涌现出大量的门户网站,门户网站是 Table 布局的始作俑者,因为他们的首页比一整份报纸的所有版面拼接在一起还复杂,Table 在这方面十分顺手,结合 colspan 和 rolspan,你几乎能够实现任何复杂的版面。
这种布局风格在2000年代初,一直到中期仍然十分流行,尤其国内,在大为美的潜意识下,人们把所有能塞到一个页面的东西都塞进了首页,Table 就像一个旧时代的管家,把所有东西虽不能井井有序,但至少是一样不少地编排起来。然而这样的 Web 终于到了让人厌恶的地步,随着搜索,RSS 订阅,以及以博客为代表的个性化 Web 的出现,人们有更多渠道获得信息,而不必去访问那几个让人几乎要晕过去的门户的首页,于是出现了一种清新的,轻量的 Web 风,使用更简单的布局,更明快的配色,大图标,大 Banner,以及更容易阅读的大字体,同时,在这个时候,CSS 已经非常成熟,而 Firefox, Opera, Safari 为代表的浏览器,在遵守 W3C 标准方面要远远好过 IE,人们终于认识到 CSS 的威力。因为 CSS 在布局上,其核心是一个 Box 模型,人们必须为 CSS 找一个可以依附的容器对象。
Div 成为幸运者一方面因为它天生就是 Box 的最佳原型,在语义上,Div 代表页面的一个区域,在外形上,它四四方方,更重要的是,它不像 <P> 或 <a> 那样事先已经被赋予特殊的语义(虽然它们也能用于 Box 模型);另一方面,则出于人们对 Table 统治一个臃肿时代的憎恶,一个时代的结束,继任者都会努力抹去旧时代的痕迹,那些旧时代的象征或代表的命运多半如此,人们并不是简单地忘却它们,而是断然 划清界限。
Table 的一切不公平待遇就此开始。为什么说不公平,W3C 不建议 Table 布局的时候,只说应使用 CSS 代替,这是什么意思,Table 不支持 CSS 吗?当然支持,而且,由于 Table 作为老牌的 HTML 对象,它的地位曾如此重要,任何浏览器都对 Table 提供了最完美的支持,包括 CSS 支持。当人们拥抱 Div 的时候,似乎忘记了 Table 也是 Box,而且是一个拥有多个内格的 Box,Table 作为一个整体,和 Div 在 Box 模型方面没有任何区别,而它的内格,除了 Margin 之外,仍然是一个 Box,内格不含 Margin 概念这是应该理解的。Div 很优秀这不必说,然而当人们说 Div + CSS 的时候,似乎暗示着 Table 无法 CSS,这是天大的误会。
Div 支持的所有CSS 属性,Table 全部支持,事实上,在Div 大红大紫之前,那些 Div 的早期采用者曾信心不足地表示,Table 能做到,Div 都能,而他们也为自己的话付出了代价,企图在 Div 中实现垂直居中的人明白我的意思,企图在 IE6 中不经 CSS Hack 而实现 100% Div 布局的人更明白我的意思。100% Height 问题,几个 Div 之间的宽度自适应问题,相信任何从事 Div + CSS 设计的人会遇到。Table 在这方面的优势并不是因为它本身多么优秀,而是因为它老牌,没有浏览器敢忽视,也因为它的特性原本如此,人们发明表格,是因为希望数据显示得整齐,就这么 简单。然而,为什么 Table 后来背上那么多的恶名?Div 拥护者对 Table 的责难不外乎以下几条。
代码臃肿:你至少需要写下 <table><tr><td>这三个标签之后,才能开始真正的内容,另外,Table 的各种标签中还包含了复杂的属性定义,而 Div 只需 <div>一个标签。
页面渲染性能问题:浏览器需要将整个表格完全读完后才会开始渲染。
不利于搜索引擎优化:搜索引擎喜欢内容与修饰分开。
可访问性差:屏幕朗读软件和盲文浏览器无法很好地理解 Table 中的内容。
不够语义(Semantic):我们需要语义的 Web。
第1条:代码臃肿
首先,Table 里面唯一无法用 CSS 定义的属性只有 Cellspacing, Cellpadding 几个,其它属性都可以并且应当使用 CSS,这样,剩下的,就是 <table><tr><td> 和 <div> 的对决,我相信一个动辄几十K大小的网页,即使使用了几十个 Table,因此多出来的代码也可以忽略不计,那些埋怨 Table 代码臃肿的人其实该检查自己的编码习惯,能将 Table 写得十分臃肿的人,写 Div 相比也未必会简洁到哪里。
第2条:页面渲染性能问题
我使用一台2004年的笔记本电脑,1.6G 的 CPU 与 1G 内存,这种配置下,看不出 Table 布局和 Div 布局在页面渲染上有任何速度差别,其实这点差别即使有,相对网络本身的延迟也可以忽略。
第3条:不利于搜索引擎优化
如果你尽可能使用 CSS 而不是 Table 的属性,前面说了,产生的代码和 Div 的差别也不会很大,搜索引擎会歧视 <table> 标签吗,这种说法的依据我至今并没有找到。
第4条:可访问性差
这是Table 固有的缺陷,不过多数 Div + CSS 的拥趸似乎并不是基于这个原因才排斥 Table。
第5条:不够语义
语义Web 的含义要深远得多,并不是仅仅在 Table 和 Div 上纠缠,即使 W3C,也并没有规定 Table 只能用来显示表格数据,很多在 Table 的语义上进行纠缠的人,其实不妨再等等 HTML 5,那才是真正的语义。
本文的目的不是让你丢弃 Div 投身 Table,相反,如果 Div 能满足你的设计需要,Div 仍是首选,但没必要避讳 Table,否则会走入另外一个极端。很多使用 Div 无法简单实现的设计,仍可以使用 Table,当然,不管使用什么,都应该用 CSS 将内容与修饰分离。Div + CSS 和 Table + CSS 都是合法的设计,谁更简单就用谁。根据我的经验,当你能预见你的内容的格式,对你即将加入的内容有能力完全控制其显示格式时,应当使用 Div + CSS;当你即将加入的内容是不固定的,你无法预见其格式,如果不想让页面坍塌,使用 Table + CSS 是一种保险的做法。
漫谈W3C标准:“DIV+CSS神话”
做网站为什么大家都喜欢用div+css
DIV+CSS时下最流行的或者说大部分做网页设计的人都采用的方式。说起来我干网页设计和网站制作也有六七年的时间了,当初DIV刚刚兴起的时候,曾和朋友们试过用DIV,但因为当时DIV+CSS这种技术还不成熟,所以也就没太在意,依然用TABLE,但,时至今日,DIV+CSS已把TABLE+CSS淘汰了,我
们这些常用TABLE的人,也得慢慢熟悉DIV了。
首先来说,DIV的好处在于样式与主体内容分离,大量减少网页代码量,使网页下载速度更快。而且对于后期网站维护来说,也是相当便捷的,这是DIV最大的优势。但个人认为,DIV也不一点缺点都没有,比如一个大型且架构复杂的网站来说,采用DIV布局对团队合作来说就是一个不小的折磨。因为全是DIV标签,如果不是本人做的,根本找不到需要的内容,当然可以添加注释,但这并不能完全解决这
个问题。
对于用习惯了TABLE的人来说,DIV确实很难适应,这就像学习武功,你本来学习的少林的功夫,如果再学武当的,兴许里面就有些冲撞,除非你忘了原来的基础,从头再来。DIV来说也是这样,对我来说对于用DIV控制盒子的各项属性就是一个不小的难题,兴好现在通过练习逐渐攻克了这个难关。
DIV+CSS任重而道远啊。
DIV+CSS布局中如何组织CSS样式表
对于简单的Web站点,可以只使用一个CSS文件。对于大型的复杂站点,对样式表进行分割以便简化维护是一种好做法。如何分割样式表是需要仔细考虑的。我一般用一个CSS文件处理基本布局,用另一个文件处理版式和设计修饰。这样的话,在布局确定之后,就很少需要修改布局样式表。这可以防止布局样式表被意外地改动或破坏。
还可以进一步细分,比如用单独的CSS文件处理颜色。这样的话,假如希望提供新的颜色方案,就只需要创建一个新的颜色样式表。假如站点上有很多表单,那么可以用单独的CSS文件处理所有表单样式。可以只在需要时链接这个文件,从而减少最初的下载开销。假如站点上的一些页面与站点的其余部分很不一样,那么可以考虑让它们使用它们自己的CSS文件。例如,假如主页的布局与站点的其余部分很不一样,那么可以为主页创建单独的CSS文件。
请记住,每个CSS文件都意味着要对服务器进行一次额外的调用。这会影响性能,所以一些开发职员喜欢使用一个大型CSS文件而不是多个小文件。终极的选择实际上取决于实际情况,而且在某种程度上这是一个个人喜好问题的。我倾向于尽可能保持灵活性和维护的简单性。
div+css模板超快打造人气网站
做站长快一年了,准确的讲应该只能算是准站长。之前做的的是一个网页设计类的站,当时选做这个主题站的原因是本身工作就是程序设计方面,做了那个站之后才发现,做站和开发网站有着本质的区别,有许多需要学习的知识和技能,比如定位关键字,网站推广等。做那个站却让我对做站长产生了了极大的兴趣,也触发了我做一个人气QQ站的想法。
做这个QQ站前后花了大概三天时间,准确的讲应该三天不到,因为白天还要工作,都是晚上和中午抽空去弄的,下面介绍下我是如何使用div+css模板打造我的QQ站的过程:
选择网站主题,确定网站目标关键字
以前做站虽然知道有关键字这么一说,但是没有深刻的理解,对关键字的效果也没有概念。一个网站的关键字基本上可以确定了流量的最大上限,因此选择网站主题和关键字一定要选有人气的,不愿做将军的兵永远不是好兵,做站也一样。
我的目标关键字是QQ网名,QQ站的人气势众所周知的。当然我选择关键字也要有一定的策略,目前我的主打得关键字是QQ情侣网名和QQ网名大全,打算等网站发展到一定阶段再向QQ网名过渡。这也是目前比较流行的做法,没办法现在做站的人太多了,竞争也太激烈了,每个关键字都已经有好多人在做了。
选择合适的div+css模板
因为QQ网名是文字类为主的站,因此我选了款以文字为主的div+css模板。现在有很多div+css的免费模板资源,你只要去百度和google搜一下div+css模板就可以找到许多,一般都提供图片预览或者在线DEMO浏览,因此选择起来还是很方便的。
我是在我自己之前的那个网页设计类的网站上找的模板,因此也没费太多工夫。考虑到QQ站是娱乐休闲类,就选了一款带多款css切换的模板,打算以后加上皮肤切换的功能,可以给人一些新鲜感。
选div+css模板需要考虑以下两个因素:
1.选择适合自己网站主题风格的模板
如果是文字类的站就不要选那种全部是图片组成的模板,相反如果是图片站当然不要选那种整个模板都没几个图的模板。一般来讲,好的模板网站都会给出模板的用途和分类,比如博客模板,企业模板等。另外颜色和风格也要符合自己网站特点,这个就要看站长个人的口味和判断了。
2.选模板最好要选那种带内页和导航页模板
因为许多模板只是提供主页的模板,因此如果你不具备一定的网页div+css设计能力的话,即使模板再好看你也最好不要去用,否则首页做出来了,内页却需要花费大量精力去自己设计,而且很容易和主页风格出入很大,效果就大打折扣了。
选择合适的CMS系统
我用的是织梦CMS系统,也是目前比较流行的CMS系统之一,是PHP语言的,还有一些像帝国CMS等也都不错。另外比较简单的asp有无忧cms(只适合简单的网站结构,没有专题,友情链接等功能模块,第三方的插件也几乎没有,使用前一定要考虑清楚)。选好CMS系统后一定要仔细看官方的使用说明和帮助,即使需要消耗一定的时间也要仔细看,省得以后绕弯路。
修改div+css模板打造QQ站
选好模板和cms系统后,接下来就是将织梦的模板标签加入到所选择的div+css模板中去。这一步非常消耗时间和精力,一定要有耐性,而且要多测试效果,特别是记得要在IE不同版本和FF中预览,看看是否都能正确显示。
将织梦标签添加到模板中最重要的是要学会参考使用织梦中默认模板templates/default中模板标签,这样可以节省很多时间。
下面举一个套用菜单标签的例子来说明一下如果套用织梦标签到自己的模板中去:
在织梦的默认模板中导航菜单的标签是存放在templets\default路径下的head.htm中,代码如下:
<div class="nav mt1">
<div class="w960 center">
<ul>
<li><a href='{dede:global.cfg_cmsurl/}/'>主页</a></li>
{dede:channel type='top' currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a> </li>"}
<li><a href='[field:typeurl/]'>[field:typename/]</a></li>{/dede:channel}
</ul>
</div>
</div>
其中有用的部分是:
{dede:channel type='top' currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a> </li>"}
<li><a href='[field:typeurl/]'>[field:typename/]</a></li>{/dede:channel}
我选择模板中的导航菜单部分是这样的:
<div id=menu class="pro_line2">
<ul class="select">
<li><a href='/'><b>首页</b></a></li>
<li><a href='#'><b>demo1</b></a></li>
<li><a href='#'><b>demo2</b></a></li>
<li><a href='#'><b>demo3</b></a></li>
<li><a href='#'><b>demo4</b></a></li>
<li><a href='#'><b>demo5</b></a></li>
<li><a href='#'><b>demo6</b></a></li>
<li><a href='#'><b>demo7</b></a></li>
</ul>
</div>
对比一下是不是有点类似,我需要做的是:
1.去掉重复的菜单项目demo2,demo3,demo4,demo5,demo6,demo7,只保留demo1作为菜单项的模板
2.把{dede:channel type='top' currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a> </li>"}...{/dede:channel}套用到demo1的前后,然后把'#','demo1'换成相应的织梦标签[field:typeurl/],[field:typename/],结果如下:
<div id=menu class="pro_line2">
<ul class="select">
<li><a href='/'><b>QQ网名大全</b></a></li>
{dede:channel type='top' currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a></li>"}
<li><a href='[field:typeurl/]'><b>[field:typename/]</b></a></li>
{/dede:channel}
</ul>
</div>
3.currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a></li>"是用来设置当前已选择的导航分类菜单风格,我的模板没有设置因此去掉。最后结果如下:
<div id=menu class="pro_line2">
<ul class="select">
<li><a href='/'><b>QQ网名大全</b></a></li>
{dede:channel type='top'}
<li><a href='[field:typeurl/]'><b>[field:typename/]</b></a></li>
{/dede:channel}
</ul>
</div>
按此方法将模板中的重复内容部分全部替换成相应的dede的标签,大体工作就完成了。从上面的例子,可见如果要用织梦cms实现自己风格的网站,熟悉织梦标签是必须的。
这里需要提醒的是:网站的内容分类数量和分类文字最大长度最好和模板的一致,否则很容易引起网站排版混乱,要费一定力气去做调整,如果对css不熟悉的话,想达到好的效果就比较难。
最后就是要设计一个自己网站的LOGO
我的办法很简单到Google搜索中选择搜索QQ图片,出来一堆QQ主题的图片,选一个自己喜欢的,然后PS上自己网站的标志性图片和文字就OK了。
CSS+DIV浏览器兼容问题解决方法
以前在岚海网络学习CSS+DIV的时候也是一头雾水,在一个小小的结构问题上可以花了大半天的功夫,现在接触得多了,其实发现当时只是卡在几个非常细节的问题上:
第一种情况:火狐下是正常的,IE6下间距错乱,这种情况,通常应该检查边距MARGIN,可以试着到边距MARGIN换成填充PADDING,这样通常都可以解决问题,也就是说,我们尽量多的在需要使用边距MARGIN的用填充PADDING去代替。
第二种情况:FLOAT造成的页面错乱,FLOAT是CSS当中最常用到的一个代码,当一个大框架当中有好几个小框架FLOAT的时候会倒致大框架失去它的高度,这个时候我们就应该在所以小框架的最后面,加上一个clear:both来清除浮动。
关于网站建设的几点经验:
1、素材的收集,平时多浏览一些做得好的欧美网站,现在很多人都喜欢去考参一些韩国的酷站,个人觉得欧美网站的用户体验远远好于韩国酷站,也更符合国情。见到好的素材及时收集起来。网页设计是经验的积累,同时也是素材的一个积累。
2、颜色的处理,对颜色有了一定的理解之后,用不超过三种的主色调加浅的过渡色彩(比如很淡的灰色)。这样的网站,不一定美观,但一定不难看。
3、留白的处理,初学者和有经验的设计师最基本的区别就是间距的处理,好的用户体验网站,就是一个对留白处理得非常好的例子。
4、网页的统一性,色彩和框架的统一,大的方面来说,就是整个网站的标题,描述文字、边框颜色,背景,框架的形状。小的细节方面就是一个图标的颜色,一个需要强调的符号都有效果的统一起来。
5、在脑海里画效果图,这是一种设计思维,当你可以在效果图上把首页,或者是大致的元素都确定之后,就可以尝试基脑海中想象中其它页面的效果图的样子。这样便可以节省大量的去把你脑海中的东西画出来的时间。
浅谈div+css的优缺点,让我们更加了解div+css
越来越多的seoer更加趋向于div+css的布局,很多朋友都只知道div+css有利于搜索引擎优化,那么div+css到底对seo有什么好处?今天小姚就来详细的给朋友们说一下div+css的优点及缺点。
首先,我们来说下div+css布局的优点:
第一、利于搜索引擎蜘蛛爬行
根据总结和经验,div+css布局有利于蜘蛛的爬行,拿html的table布局和div+css布局的网页来做对比,很显然table的字节大于div+css的,字节小就有益于搜索引擎蜘蛛下载页面所用的时间,而且也有益于蜘蛛爬行到网站深处。
第二、易于修改
在一般情况下,div+css布局的网站,都是将html页面和css文件分开的,div+css的特点就是能将网页的内容和表现形式分离,所以,假如你要修改网站整站布局的话,一般只需要修改css文件里的的个别属性即可,而这种特点是table不具备的。
第三、减少网页加载时间
前面就提到过,div+css是将css文件和html文件分开的,当用户点击网站时,是在同时下载css文件和html文件,所以可以提高打开网页的速度,而table是必须以标签开始到结束才能显示网页内容,另外,div的html文件则是变加载边显示,这样是不是提高了用户体验?Google已经将网页加载速度列入了排名的因素,尽管这个因素只能影响排名的一小部分,甚至可以忽略,但是有利于seo的办法,我们为什么不用?
说完了优点那么现在就来说说缺点:
第一、开发技术高 众所周知,div+css要兼容各种浏览器,这样增加了div+css开发的难度。
第二、开发时间长 div+css布局相对于table布局来说,div+css的耗费时间要比table布局的时间长很多,另外考虑到浏览器兼容的问题,各种浏览器间的测试也是一个费时的事情。
第三、开发成本高 就上两点所说,高技术和长时间决定了他的成本。
CSS初学者常犯几种错误
即使是老手也经常会弄错div的嵌套关系。可以用dreamweaver的验证功能检查一下有无错误。
二、检查CSS是否正确
检查一下有无拼写错误、是否忘记结尾的 } 等。可以利用CleanCSS来检查 CSS的拼写错误。CleanCSS本是为CSS减肥的工具,但也能检查出拼写错误。
三、确定错误发生的位置
如果错误影响了整体布局,则可以逐个删除div块,直到删除某个div块后显示恢复正常,即可确定错误发生的位置。当然,在测试前请注意原来代码的备份。
四、利用border属性确定出错元素的布局特性
使用float属性布局一不小心就会出错。这时为元素添加border属性确定元素边界,错误原因即水落石出。
五、float元素的父元素不能指定clear属性
MacIE下如果对float的元素的父元素使用clear属性,周围的float元素布局就会混乱。这是MacIE的著名的bug,倘若不知道就会走弯路。
六、float元素务必指定width属性
很多浏览器在显示未指定width的float元素时会有bug。所以不管float元素的内容如何,一定要为其指定width属性。
七、float元素谨慎指定margin和padding等属性
IE在显示指定了margin和padding的float元素时有bug。因此谨慎对float元素指定margin和padding属性。也可以使用hack方法为IE指定特别的值。关于此知识52CSS.com有详细介绍。
八、float元素的宽度之和要小于100%
如果float元素的宽度之和正好是100%,某些古老的浏览器将不能正常显示。因此请保证宽度之和小于99%。
九、是否重设了默认的样式?
某些属性如margin、padding等,不同浏览器会有不同的解释。因此最好在开发前首先将全体的margin、padding设置为0、列表样式设置为none等。
十、是否忘记了写DTD
如果无论怎样调整不同浏览器显示结果还是不一样,那么可以检查一下页面开头是不是忘了写DTD
什么是DIV+CSS布局?
DIV+CSS是网站建设标准(或称“WEB标准”)中常用术语之一,div+css 是一种网页的布局方法,这一种网页布局方法有别于传统的HTML网页设计语言中的表格(table)定位方式,真正地达到了w3c内容与表现相分离。HTML语言自HTML4.01以来,不再发布新版本,原因就在于HTML语言正变得越来越复杂化、专用化。XHTML语言是一种可以将HTML语言标准化,用XHTML语言重写后的HTML页面可以应用许多XML应用技术。使得网页更加容易扩展,适合自动数据交换,并且更加规整。在XHTML网站设计标准中,不再使用表格定位技术,而是采用DIV+CSS的方式实现各种定位。
应用程序授权功能
一旦我们知道了用户是谁,就可以确定他们是否有权限访问请求的资源。这一过程的实现方式很多,根据资源决定。在基于windows的系统中,大多数资源都有一个访问控制列表(ACL),其中列出了可以访问某一资源的用户。这种列表通常指定了每个用户所拥有的访问类型,即他们是否能够阅读它、写入它、修改它或者删除它等等。
例如,如果用户请求一个ASP页,操作系统将确认他对此页面是否具有read访问权限。如果有,将允许IIS读取该页。然而,IIS也带有授权设置,用来控制用户获取某一资源的权限。假设是一个ASP页面,如果IIS为该页设置了Script Execute(脚本执行)许可,那么用户就可以在该页执行脚本。
在IIS中验证身份
当用户通过web请求资源时,IIS接受请求并执行用户的初始验证工作。在判断用户是否被允许访问资源之前,IIS也执行其他的检查工作。
1、IP地址和域名限制。在windows2003 server和windows NT4中,可以规定客户机的IP地址和域名,此客户机会被允许访问或拒绝访问。可以通过IP address和domain name restrictions对话框完成,这些对话框位于站点或目录的properties对话框的directory security页。如果经常从单独机器上访问受限制的站点,或者如果所有的用户都来自于一组特定的IP地址或域,则这些对话框就很有用。