MVC部署(IIS6.0)
MVC部署到IIS7.0是非常方便的事情,但是mvc部署到IIS6.0中,一些细节却不得不注意下。前一阵子,在IIS6.0 下部署ASP.NET MVC网站,走了一些弯路,也摸索出一些细节方面的体会, 跟大家分享下。
我所使用的环境环境:
l 操作系统 Windows Server 2003
l Microsoft .net FrameWork 3.5 SP1
l Microsoft MVC 2.0 Preview1
l IIS 6.0
下面介绍下mvc部署到IIS6.0的安装步骤:
mvc部署1. 首先安装 Microsoft .net FrameWork 3.5 SP1安装包,需要在线下载一些内容,如果下载的是完整安装包,其中还是要有10M左右的需要在线下载的内容。
mvc部署2. 安装Microsoft MVC 2.0 Preview1
mvc部署3. 安装IIS 6.0
mvc部署4. IIS 的配置
n ASP.NET 标签使用 ASP.NET v2.0.50727
n 建立一个应用程序池 MvcPool ,使用默认值。
n 文档 :默认文件 使用Default.aspx
n 添加MVC的解析:主目录标签,点击【配置】,【映射】,【添加】, .mvc ,关联文件为C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,确认文件是否存在 取消勾选,点击确定。
n 插入通配符应用程序映射,点击 【插入】,选择C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,确认文件是否存在 取消勾选,点击确定。
n 在不重启电脑的情况下Web服务扩展:
首先查看是否存在名称为 ASP.NET v2.0.50727,允许的服务扩展,如果不存在,那么,新建一个web服务扩展,关联文件为C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll, 并设置为【允许】。
n 设置【主目录】,按照需要设置脚本资源访问、读取、写入、记录访问、索引资源 勾选项目。
n 选择其他网站没有使用的端口
n 设置网站的应用程序池为先前建立的 MvcPool
n 安装WCF服务宿主到服务器的服务列表中,启动该 服务,并设置为【自动启动】。
n 启动MvcPool应用程序池
n 启动网站.
n IIS6.0日志的默认设置为C:\WINDOWS\system32\LogFiles,但是最好不要设置到C盘,日志久了,或者访问量高了,慢慢的就会把C盘写满,导致网站无法保存新的内容。因此可以将其转移到其他盘,然后再定期清理。推荐建立一个操作系统的定时计划任务,写一个脚本,来定时执行清理。
当在 Web 浏览器中查看一个 Microsoft ASP.NET 应用程序时您可能会收到以下错误消息:
--------
即使这样部署完毕后,但有时还会出现一个问题,错误消息是下列:CS0016: 不可能写入输出文件 'c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\application1项目名称\c11b43f6\cf3ec03\rizcntet.dll。 目录名称无效。
解决方案如下:
创建临时文件夹下 %Systemroot%,然后命名 Temp。
授予 aspnet 用户帐户在.net Framework 1.0 或临时文件夹的完全权限在 NETWORK 服务 中.net Framework 1.1 的用户帐户。
右键单击 我的电脑,然后单击 属性。
在 高级 选项卡上单击 环境变量。
选择在 系统变量,TEMP 变量,然后单击 编辑。
类型 %SystemRoot% \TEMP 在 变量值 框,然后再单击 确定。
重复步骤 5 和 6 以编辑 TMP 变量。 单击 确定 两次。
单击 开始,然后单击 运行。
若要重置 Internet Information Services (IIS),在命令提示符下键入 iisreset。