您的位置:首页 > 编程语言 > ASP

asp.net mvc4部署到Windows server 2012+sql server 2012中的一些问题

2014-06-07 23:24 211 查看

项目开发环境为windows7+vs2010,生产环境为windows server 2012+SQL server 2012,操作系统和数据库安装在同一个virtualbox虚拟机。部署过程中还是有不少问题,记下来以备查看。

1. 为IIS打开asp.net 4.5

在windows server 2012中添加web服务器角色后,默认没有开启.net功能。在此情况下运行应用程序会发生0x80070021错误。解决方法在web服务器角色中选中下面的子选项安装即可。

2. 设置连接字符串

众所周知,用vs2010开发时用的是本机的sql server express版,连接字符串的data source=.\SQLEXPRESS;。部署时要连接到生产环境中的sql server 2012数据库。

最开始我改成data source=.\MSSQLSERVER;,报0x80121704错误,提示连接字符串无效,error:25。

然后改成data source=.\MSSQL11.MSSQLSERVER;

还是报这个错,但是error:26。

最后没办法直接用 data source=.;连接本机的默认实例,反正只装了这一个数据库。

也可以用data source=计算机名;或着data source=ip地址;。

虽然最后连接成功,但我还是不知道sql server 2012的默认实例到底怎么写。

3. 设置应用程序池标识

设置连接字符串后可以找到数据库了,但是访问数据库时有“IIS_USER\你的应用程序池名”没有权限的错误。

解决方法,选择应用程序的应用程序池,在高级设置里将标识改为network service。

然后在sql sever 2012中新增用户,在高级中搜索“其他角色”,“用户”,“组”,在结果里选择network service添加新用户,在服务器角色中选中sysadmin。重启数据库服务后访问成功。

最后,部署调试时要在服务器本机访问http://localhost,这样才能获得详细错误信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: