ASP.NET Visual Studio2010 发布Web网站问题详解

今天研究了一下如何发布web网站,之前总是没耐心,遇到点问题就没心情搞了,今天总算有点耐心搞明白了。其实遇到的问题还是挺多的,网上也没有太全的解释,所以结合自己还有别人的方法进行一下总结。

环境:Win7系统,Visual Studio 2010,IIS6.1

关于发布部分,大家可以查看此链接http://wanghaitaoboke.blog.163.com/blog/static/1708725122012527716235/,步骤写的很详细。补充一下:在其第二步【发布Web】部分,【目标文件】处要选择一个非项目工程所在文件夹。

如果大家各方面设置的都比较好,看完上面的文章你的网站就已经发布了,在局域网内已经可以浏览了。不过,通常如果你是首次发布,应该不会那么顺利。重点在下面:

当在地址栏中输入设定的IP地址+端口号后可能出现以下几种情况。

问题一,检测到在集成的托管管道模式下不适用的ASP.NET设置。

解决办法:打开IIS,选择应用程序池,会看到右侧的操作栏中有一项为【设置应用程序池默认设置】,点击进入,把【启用32位应用程序】置为true,把【托管管道模式】置为Classic。如图

问题二,由于Web服务器的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面。

解决办法:打开IIS,选择根目录,双击【ISAPI和CGI限制】这项,然后将【ASP.NET v4.0.30319】这两项均设置成允许。如图

问题三,没有可访问的表。请确保在Global.asax中注册了至少一个数据模型并启用了基架,或者实现自定义页面。

解决办法:打开工程,打开Global.asax文件,在RegisterRoutes 方法下我们可以看到下面内容

            //                    重要: 数据模型注册 
            // 取消对此行的注释,为 ASP.NET Dynamic Data 注册 LINQ to SQL 模型。
            // 若要设置 ScaffoldAllTables = true,需符合以下条件,
            // 即确定希望数据模型中的所有表都支持基架(即模板)。若要控制各个表的
            // 基架,请为表创建分部类并将
            // [ScaffoldTable(true)] 特性应用于分部类。
            // 注意: 请确保将“YourDataContextType”更改为应用程序的数据上下文类的
            // 名称。
            // model.RegisterContext(typeof(YourDataContextType), new ContextConfiguration() { ScaffoldAllTables = false });

把代码段解注后,用自己创建的上下文替换YourDataContextType,把ScaffoldAllTables 置为true,我用的是Linq to Sql 写的数据部分。修改后是这个样子

            DefaultModel.RegisterContext(typeof(BmsContextDataContext), new ContextConfiguration() { ScaffoldAllTables = true });

修改之后,不要忘记重新再发布一次。

问题四,不能打开数据库,登录失败

解决办法:这个问题刚出来的时候有点懵,以为是IIS设置的问题,后来仔细一瞅,隐隐觉得似曾相识,通过查看数据库连接,发现果然是连接数据库上出现了问题,跟IIS设置无关。而这个问题的解决方法在以前的一篇文章中详细写过,遇到这个问题的时候,都是这么解决的,大家可以看以下链接:http://zhouhongyu1989.blog.51cto.com/2931598/1390501

解决了以上几个问题之后,再次登录发布后的网站,就能正常访问了,然后又在同局域网的其他机器上验证了一下,也没什么问题。

时间: 2024-08-28 20:17:07

ASP.NET Visual Studio2010 发布Web网站问题详解的相关文章

VS2010发布web应用程序详解(解决发布丢失非代码文件的问题)

首先需要项目可以生成成功. 右键项目名称,选择[发布] 此时弹出发布选项界面, 我们此处选择发布方法为[文件系统] 选择好[目标位置] 选择[发布前删除所有现有文件] 点击[发布],既可以在目标位置发布好程序文件. 这里的文件,不带cs文件,只有前台文件.dll等文件,避免发布后源代码的泄露. 但是,有时候我们在项目中添加了一些模板文件,但是发布以后,没有将这些文件也给复制过去,对于这种情况,我们需要特殊处理下这些文件属性 右键对应文件,在文件属性中,将生成操作字段设置为[内容[ 此时,发布OK

Visual Studio发布Web项目报错:Unable to add 'xxx' to the Web site. Unable to add file 'xxx'. The specified file could not be encrypted.

背景 Visual Studio下的Web项目 现象 发布时遇到Unable to add 'xxx' to the Web site.  Unable to add file 'xxx'. The specified file could not be encrypted.的报错 原因 这些文件(文件夹)被设置为"加密".可能因为这些文件是从Internet上下载并复制到项目下的文件夹,在被下载前就已经被启用"加密"选项 这些文件(文件夹)来自于其他计算机并被锁定

ASP.NET中Web.Config配置文件详解与应用

1.首先是Web.Config配置文件详解的参数含义(具体内容都在以下代码中有注释-我从网上找到的) 1 <?xml version="1.0" encoding="utf-8"?> 2 3 <!--注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来配置应用程序的设置.可以使用 Visual Studio 中 4 的“网站”->“Asp.Net 配置”选项. 5 6 设置和注释的完整列表在 machine.config.comm

高并发高流量网站架构详解

(推荐)高并发高流量网站架构详解 Web2.0的兴起,掀起了互联网新一轮的网络创业大潮.以用户为导 向的新网站建设概念,细分了网站功能和用户群,不仅成功的造就了一大批新生的网站,也极大的方便了上网的人们.但Web2.0以用户为导向的理念,使得新 生的网站有了新的特点--高并发,高流量,数据量大,逻辑复杂等,对网站建设也提出了新的要求. 本文围绕高并发高流量的网站架构设计问题,主要研究讨论了以下内容: 首先在整个网络的高度讨论了使用镜像网站,CDN内容分发网络等技术对负载均衡带来的便利及各自的优缺

[转]Web.config配置文件详解(新手必看)

本文转自:http://www.cnblogs.com/gaoweipeng/archive/2009/05/17/1458762.html 花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点.所以这里只介绍一些比较常用的节点. <?xml version="1.0"?> <!--注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来配置应用程序的设置.可以

.Net中Web.config 配置详解

花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点.所以这里只介绍一些比较常用的节点. <?xml version="1.0"?> <!--注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来配置应用程序的设置.可以使用 Visual Studio 中的“网站”->“Asp.Net 配置”选项. 设置和注释的完整列表在 machine.config.

Web.xml配置详解(转)

Web.xml配置详解 Posted on 2010-09-02 14:09 chinaifne 阅读(295105) 评论(16) 编辑 收藏 1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码.DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义).

web.xml配置详解(2)

1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码.DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义).所有部署描述符文件的顶层(根)元素为web-app.请注意,XML元素不像HTML,他们是大小写敏感的.因此,web-App和WEB-APP都是不

C#中web.config文件详解

C#中web.config文件详解 一.认识Web.config文件 Web.config 文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中.当你通过.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的 Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置.如果你想修改子目录的配置设置,你可以在该子目录下新建一个 Web.