2012vs发布Web——新闻系统发布流程及错误分析

           终于开始发布系统了,好高兴啊,现在将新闻发布的流程和发布过程中产生的错误都总结一下。


 发布流程:

1 系统重新生成——>在web中点击发布

2 点击发布之后——出现下面的页面——点击新建——写上自己要给这个系统的命名

                  技术分享

3 点击连接,出现下面的页面,发布方式选择“文件系统”,目标位置为我们将要发布系统的文件夹的物理地址

                  技术分享

4 设置里面选择默认的“Release”就可以啦

                    技术分享

5接下来,点击发布,我们可以看到自己的系统会显示发布成功。


                 技术分享

6 接下来就要看IIS(internet 信息服务管理器),也是Web服务器。具体见他的用处和更多的解释见http://baike.haosou.com/doc/3171310-3342126.html

  右击网站——选择添加网站(这是我添加的是TEST),然后填写我们的网站名称,这里的应用成程序池是我们默认的DefaultAppPool.物理地址就是我们上面发布系统的文件夹的路径。然后填写我们的机房的IP号。同时为了防止发布系统的太多,端口堵住,更改一个新的端口。

                 技术分享

7 给用户赋权限。我们点击“连接为”——选择特定用户——写上我们电脑的用户名和密码,点击确定。

                          技术分享

8 点击测试设置——我们看到我们的身份验证和授权都已经是对勾啦。      

                      技术分享

9 这时候点击我们的网站,点击内容视图。然后在我们要打开的网页上面,右击——选择浏览,就可以看到我们发布的网页啦。

                          技术分享

    做到了以上几点,在正常情况下就可以成功浏览网站啦。

    因为要在别人的电脑上,也要访问你的网站,所以需要关掉防火墙(控制面板——防火墙)


错误汇总:


    由于我们都设置了错误页,当我们出错的时候直接会跳转到出错页,然后又跳转到主页。这样我们就看不到错误啦,所以在出错之前把这个错误页先注释掉,看看它到底报的错。

1  

技术分享

   这个问题网上有好多好多的答案,具体请见链接http://blog.csdn.net/renpinghao/article/details/6423353

假如你的电脑是32位的操作系统,出现了上面的问题,可以看一下师姐的博客。http://blog.csdn.net/mazhaojuan/article/details/7660657#comments

   我的是64位的操作系统,按照师姐博客中的操作,我的总是不成功。更换路径之后,执行成功。

                  

                  技术分享                                             技术分享

         当时我想,既然这里更新的是V2.0的,那么在IIS中,我是不是也该选择2.0的,上网查了知道假如我选择V2.0,那样的话模式就是经典,而不是我们默认的集成,页面如下:

                     技术分享



      但是仍然不成功,这个问题还在。(我觉得这个方案还是可行的技术分享技术分享技术分享技术分享,但是执行不成功,不知道为什么)

       既然默认的是v4.0,同时默认的托管管道模式是集成,那么我们可以用一个设置,来启动一下32位的。选择我们的v4.0,右击——选择高级设置——启用32位应用程序为True,刚刚的那个问题就这样解决啦!

                技术分享

2  系统进入之后,点击添加新闻,却报出这个错误,我在vs中运行是没有问题的,为什么发布之后却出错呢?

              技术分享

     我开始觉得肯定是路径的问题,因为牛腩老师讲的绝对路径、相对路径什么,我觉得我容易弄混啦,关于路径的讲解,参见师姐博客http://blog.csdn.net/wangdan199112/article/details/38110209  

     我看了看我的代码,没有错误啊。上网查了之后,更改了一下。成功啦。

    技术分享

     

    上面是我又重新写的代码,下面是以前的代码,注销啦。CodeFile和CodeBehind到底有什么的区别和联系呢?

     原来是cs文件没有编译进去。对于开发时,即 页面的逻辑代码 cs 文件存在的时候,下属两种写法都没有问题。

<%@ Page Language="C#" AutoEventWireup="true" Codebehind="index.aspx.cs" Inherits="Community.IndexHomePage.index" %>

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="index.aspx.cs" Inherits="Community.IndexHomePage.index" %>

     但是部署到站点后,我们不会部署 cs 文件,这时候,后一种写法就会报找不到文件的错误了。除非你把 cs 也部署出去,否则就会报编译时错误,找不到文件。

     详细的区别,请见http://www.360doc.com/content/11/1221/20/6856598_174058525.shtml

    

      在发布过程中,还出现了其他的错误,比如没有把bll文件下面的dll控件AspNet.ScriptManager.jQuery.dll也发布过去。我只好复制粘贴到发布系统的bll下面啦,到底是哪里出了问题,我也不清楚。


整体感受:

      发布是一个很小的环节,但是这几天一直在弄发布,整体上的收获还是很多的。后面的学习会更加精彩,同时总结也是学习的重要环节,让csdn更好的记录我们学习的收获和感受吧。



















郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。