这两天我们给校党委的做的一个站点正式交工,党委那边要我们帮其在服务器上配置好.我以为这是一个轻松的事情,再怎么说我维护服务器也有些时候了,哪知道配置IIS6.0的过程中还真遇到了不少问题。
由于这个服务器是个虚拟机,网络中心竟然不懂sql server配置,让我用远程桌面来操作服务器,我直接晕倒。一看网络中心这点技术水平我就明白了为什么我们宿舍楼隔三差五老掉线,修了N久毛病如故。
安装了sql server,导入了数据,配置了iis,接下来问题就一一登场了。
问题一:
在浏览器中输入网址,页面显示:

初步设想应该是网站目录的权限不够。尝试一,右键单击网站目录,选择属性,在弹出的对话框中选择安全选项卡,将组,用户的权限该勾的勾上。然后再测试,问题如故。
尝试二,将网站目录的上级目录,就是磁盘的根目录文件夹的用户组的权限全选上,问题还是没解决。而且我发现每次我将 CREATOR OWNER这个用户的权限勾上,但是修改结果却无法保存下来。
尝试三,将网站目录移植到磁盘根目录下,然后运行测试,这个问题竟然解决了。真是郁闷,我baidu了半天也没找到这个错误的原理,那个高手知道可以给我讲下。
问题二:
虽然解决了“您不具备查看该目录或页面的权限,因为访问控制列表 (ACL) 对 Web 服务器上的该资源进行了配置。”的错误,但是新的问题又出现了。这次页面显示的是

我一看这个错误就笑了,原来配置IIS的时候忘了选择.netframework的版本。我打开IIS,找到默认网站,选择其属性,想点击asp.net选项卡配置.netframework的版本,但是竟然没有找到asp.net这个选项卡。我初步猜想这台服务器还没有安装.netframework2.0,所以才出现这样的问题。我打开c盘,依次进入 windows-> Microsoft.NET-> Framework,果然没有找到v2.0.50727这个文件夹。我从网上辛辛苦苦下了个.netframe2.0,安装了上去。大家注意装好后一定要将其注册到IIS中。方法是单击开始—>运行,输入cmd,然后在dos下输入 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe –i 即可。这下在iis的默认网站的属性中终于看到asp.net这个选项卡了。
问题三:
当我再次测试的时候,页面又报错了。晕倒。这次的错误比较常见。

很明显是数据库连接字符串的问题。我建成了下连接字符串,没问题啊。用户名和密码没错,数据库没错,服务器IP没错。尝试一:查看sql server组属性里的安全性,检查身份验证方式是否为 sql server和windows。然后我再测试,问题依旧。尝试二,打开sql server查询分析器,输入服务器ip,账号密码,点击登陆。返回结果是找不到此sql server实例。我猛然想起来自己在装sql server的时候并没有使用默认的实例名local,而是另外取了个。原来问题出在这里。解决方式是在配置文件的数据库连接字符串中将服务器ip改为sql server的实例名。问题解决。
看着运行正常的页面,心里感慨万千。本来自己觉得维护服务器这么久了,懂的还算多吧,通过这个事情明白自己不清楚,不熟悉的地方还是很多,要不断的学习啊。
解决一个难题,过程比结果更重要。