关闭

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

标签: windows server 2012sql server 2012iismvc4部署
3259人阅读 评论(0) 收藏 举报
分类:

项目开发环境为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,这样才能获得详细错误信息。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    文章分类
    文章存档