|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
以前很热炒跨平台,主要是由于硅谷挑战微软霸主地位的热情,但是冷静下来后,跨平台往往不是那么一回事。假设你有个软件,所谓的跨平台,你只需要为第二个平台上重新编译一次就行了,这样很难么?写之前,夷由了很长工夫,不懂这个低级剖析会不会引发园友的批评,说其实,在博客园发贴,真有点坐卧不宁的感到,很怕对不住人人。
前段工夫花了一个礼拜给客户做了一个OA体系,用的是Win2008的体系,VS2008+Access数据库做的,原本客户已有一个ASP的主机,由于思索到如今本本上的确没装有别的的开辟情况了,就间接上.net3.5了。当作好想固然的间接上传到服务器,不想老是运转不起来。
总结了一下,成绩以下:
1:会见静态页面无任何成绩,可是.aspx就不可,老是报一个服务器堕落。但详细毛病又没有提醒。
2:没法加载DLL文件
3:首页登录图片显现不完全。
刚入手下手一向在和客服接洽,觉得是他们的服务器不撑持,由于我在当地部署是没有任何成绩的。厥后他们压服务器是没有成绩的,应当是程序的成绩。
然后我试着在当地IIS新建一个假造目次来运转,公然也是不可的,报出的毛病是一样的。新建网站是能够间接运转的。
剖析以下:
1:IIS7会不会和IIS6一样,默许编译言语是VB?
2:使用程序设置文件的寄存目次是否是不准确?
3:网站编译后的BIN目次是否是没有被页面会见到?
4:页面之间的会见路径是不是准确?
5:数据库文件是不是有实行全体权限?
带着以上成绩,我一个个的往查找。
成绩1:找到服务办理器上面的IIS的默许网站,切换到“功效视图--.net编译项”,翻开一看,公然默许编译言语是VB,好,第一个成绩弄定。
成绩2:设置文件改放到默许网站根目次上面,把本来IIS自带的设置文件掩盖失落,再运转,好,能够会见到上岸页面了,可是上岸页面的图片老是显现不出来,想一想应当是路径成绩,接着将目次IMAGE也放到根目次,革新后图片显现出来了,可是考证码没有,怪了。为何呢?
再次剖析,由于考证码是用一个.aspx页面熟成一个流后写进到Cookie中的,会不会是也是路径成绩?接着把考证码页面再放到根目次下,公然OK。
成绩3:关于DLL文件实行权限成绩,实在DLL文件是天生到了BIN目次上面,以是应当是这个目次的实行权限成绩了,接着在IIS中翻开此目次属性,找到一个叫做:IIS_IUSER的用户,编纂此用户权限,使其具有对BIN的全体权限。再次运转,OK,会见到了,可是数据库又堕落,找不到可用的毗连。
真是怪了,为何呢?明显数据库就是和SERVER层放在一同的呀!并且页面能够会见到数据库呀,为何SERVER不可呢?我们先来剖析成绩4.
成绩4:我的首页上有一颗树,在天生树时,我用了硬编码体例(工夫紧),招致了导航的URL老是主动上"~/",在公布时没注重到这个成绩,以是页面间会见时,老是说找不到路径。把这个"~/",往失落后成绩办理,实在这是小成绩了,团体没注重到。
成绩5:数据库文件成绩,终究离开这个重头了。实在不懂是否是IIS中假造目次的成绩,要办理这个成绩,只需你在网站根目次下建好一个叫做App_Data的目次,再将你的ACCESS数据库放出来就差未几了,只以是说差未几,由于还要再做一件事,和BIN目次一样,IIS_IUSER的用户对这个目次也是没有写进权限的,你查询数据没成绩,可是你要写进,欠好意义,堕落。
成绩到这里办理得差未几了,最初依照办理成绩的步骤将网站放到服务器上,一运转,仍是不可,咦,真是怪事年年有,往年出格多啊!
心想逝世马当作活马医吧,再次把BIN目次COPY到假造目次下,注重,只是COPY,根目次下仍是有一个BIN目次的,假造目次下的设置文件删除,再次会见上岸页面,输出用户名暗码,乐成!再试一下别的的操纵,统统OK!
直到这一步,距体系完成已已往了三天,网上广发贴子,无人回应,百度GOOGLE找不就任何匡助,头真是年夜。
来自:浅谈IIS7中部署.net3.5的网站成绩
批评:
2008-06-0716:45|梁逸晨
给他人办事,能上2.0就不错了。
如今用3.5还不太实际。
至于成绩1:只需你ASPX文件指定了LANGUAGE属性,服务器设置甚么言语编译都是主要的(少少数的工资强迫设置system.config的情形破例)
假如不是本人的服务器,最好不要再2008下面利用ACCESS,由于你没法断定他人的体系是32位仍是64位,假如是64位的话,又要经由很庞大的设置才干实行ACCESS文件。2008-06-0718:04|benbenxx"~/"要加上runat="server"就能够了。假如没有runat="server"那就往失落“~”
"~/"暗示根目次!我觉得很重要,一般所说的不重要应该指的是:你学好一种以后再学另一种就很容易了。(因为这样大家可能有一个错觉就是语言不是很重要,只要随便学一种就可以了,其实不是这样的。 |
|