小妖女 发表于 2015-1-18 11:28:39

ASP.NET编程:浅谈IIS7中部署.net3.5的网站成绩仓酷云

以前很热炒跨平台,主要是由于硅谷挑战微软霸主地位的热情,但是冷静下来后,跨平台往往不是那么一回事。假设你有个软件,所谓的跨平台,你只需要为第二个平台上重新编译一次就行了,这样很难么?写之前,夷由了很长工夫,不懂这个低级剖析会不会引发园友的批评,说其实,在博客园发贴,真有点坐卧不宁的感到,很怕对不住人人。
前段工夫花了一个礼拜给客户做了一个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"那就往失落“~”
"~/"暗示根目次!我觉得很重要,一般所说的不重要应该指的是:你学好一种以后再学另一种就很容易了。(因为这样大家可能有一个错觉就是语言不是很重要,只要随便学一种就可以了,其实不是这样的。

莫相离 发表于 2015-1-21 07:45:36

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

冷月葬花魂 发表于 2015-1-30 11:43:24

同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。

灵魂腐蚀 发表于 2015-1-31 08:19:35

ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。

海妖 发表于 2015-2-2 18:19:23

由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。

分手快乐 发表于 2015-2-8 04:03:36

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。

爱飞 发表于 2015-2-24 03:58:58

主流网站开发语言之PHP:PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。

不帅 发表于 2015-3-7 10:48:27

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。

仓酷云 发表于 2015-3-10 23:30:21

PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。

老尸 发表于 2015-3-17 12:49:33

对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。

活着的死人 发表于 2015-3-24 10:12:15

由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。
页: [1]
查看完整版本: ASP.NET编程:浅谈IIS7中部署.net3.5的网站成绩仓酷云