当前位置:编程学习 > C#/ASP.NET >>

WEB服务应用程序的安装部署

我基于VS 2008 和 SQL 2005为客户开发了一个WEB服务应用程序“XXX评估系统”,虽然是个生手,没有实际开发经验,但是在编程上遇到的问题我都一个个解决了,很有成就感
但是在安装部署的时候,却让我有种生不如死的感觉,大家看看我的经历,兴许会有所帮助

一、安装Internet 信息服务(IIS)
1、打开控制面板
2、选择“添加或删除程序”,打开“添加或删除程序”对话框
3、选择“添加/删除Windows组件”,打开“Windows组件向导”对话框
4、选择“Internet 信息服务(IIS)”,单击“详细信息”按钮
5、在“Internet 信息服务(IIS)的子组件”列表框中,将所有选项都选中,并单击“确定”按钮
6、在“Windows组件向导”对话框中,单击“下一步”按钮,开始配置组件
7、在配置组件的过程中,需要对所需要的文件进行重定位:...\iisxp-v5.1\I386
8、在配置组件过程中,系统提示:(Windows 文件保护:正常运行Windows所需的文件已被替换成无法识别的版本。要保持系统的稳定,Windows必须还原这些文件的原有版本),措施:忽略

二、安装NetFramework3.5

三、安装SQL Servier 2005
1、用虚拟光驱加载镜像文件,安装程序自动运行
2、选择“基于X86的操作系统”
3、选择“服务器组件、工具、联机丛书和示例”
4、按照提示进行安装操作
5、在“服务账户”页面,选择“使用内置系统账户”--“本地系统”
6、在“身份验证模式”页面,选择“混合模式”,并指定密码:801223
7、按照提示进行安装操作
8、安装完毕

四、还原数据库
1、新建数据库:“维护作风量化评估系统”
2、右键单击新建的数据库,选择:“任务”--“还原”--“数据库”,打开“还原数据库”对话框
3、选择“源设备”,单击按钮“...”,打开“指定备份”对话框
4、单击“添加”按钮,找到要还原的bak文件
5、在“还原数据库”对话框的左上角,选择“选项”,然后选择“覆盖现有数据库”
6、单击“确定”按钮,完成还原

五、添加新的登录名
1、在“对象资源管理器”中展开“安全性”
2、右键单击“登录名”,选择“新建登录名”
3、输入登录名:hantang50
4、选择“SQL Server身份验证”
5、输入密码:801223
6、取消“强制密码过期”
7、默认语言:Simplified Chinese
8、单击“确定”按钮

六、用户映射
1、单击“新建查询”按钮
2、输入以下代码:
Use 维护作风量化评估系统
go
sp_change_users_login 'update_one','hantang50','hantang50'
3、单击“执行”按钮

七、安装“维护作风量化评估系统”(按照提示安装即可)

八、修改配置文件
1、打开文件:C:\Inetpub\wwwroot\XXX评估系统\Web.config
2、修改连接字符串中的服务器名:“Data Source = XXXXXXXXXX”

九、测试网站
1、在地址栏输入:“http://localhost/XXX评估系统/Default.aspx”
2、确定后,进入登录页面,但是页面分成上下两栏,下面一栏显示空白
3、解决方法:电脑上安装是IE6,版本太老,更新IE,安装IE8

十、再次测试网站
1、在地址栏输入:“http://localhost/XXX评估系统/Default.aspx”
2、确定后,进入登录页面,显示正常
3、在登录页面输入“用户名”和“密码”后,单击“登录”按钮
4、进入主页,个别按钮显示为“X”,刷新后,显示正常
5、打开需要访问数据库的页面时,出现错误:无法打开登录所请求的数据库“XXX评估系统”。登录失败。用户 'xxx\ASPNET' 登录失败。
6、解决方法:
(1)右击桌面“我的电脑”,选择“管理”,打开的“计算机管理”对话框
(2)展开“本地用户和组”,选择“组”
(3)右边的窗口中双击“Remote Desktop Users”组,在打开的“Remote Desktop Users”属性对话框
(4)单击“添加”按钮,打开“选择用户”对话框
(5)单击“高级”按钮,单击“立即查找”按钮
(6)选择“ASPNET”,单击“确定”按钮
(7)单击“开始”--“所有程序”--“Microsoft SQL Server”--“Microsoft SQL Server Management Studio”
(8)在“对象资源管理器”中展开“数据库”,展开“XXX评估系统”,展开“安全性”,右键单击“用户”,选择“新建用户”,打开“数据库用户-新建”对话框
(9)单击“登录名”旁的“...”按钮,打开“选择登录名”对话框
(10)选择“浏览”,打开“查找对象”对话框
(11)选择“XXXXXX\ASPNET”,并“确定”
(12)在“数据库用户-新建”对话框中,输入用户名:“XXXXXX\ASPNET”;默认架构:dbo;角色成员:db_owner
(13)确定

十一、第三次测试网站
1、上述问题得到解决
2、在我的网站中需要把GridView中的数据导入EXCEL表格,并在本地进行保存,但是单击保存按钮后,没有任何反应
3、解决方法1:修改配置文件
(1)打开“控制面板”,选择“用户账户”
(2)为账户添加密码,假设账户为“Administrator”,密码为:801223
(3)打开文件:C:\Inetpub\wwwroot\维护作风量化评估系统\Web.config
(4)在<system.web>下面添加:<identity impersonate="true" userName="Administrator" password="801223" />,如下所示:
<system.web>
<identity impersonate="true" userName="Administrator" password="801223" />
4、解决方法2:设置DCOM组件权限
(1)选择“开始”,选择“运行”,打开“运行”对话框
(2)在“运行”对话框中输入“dcomcnfg”,单击“确定”,打开“组件服务”窗口
(3)依次展开:控制台根目录-组件服务-计算机-我的电脑-DCOM配置,找到“Microsoft Excel 应用程序”
(4)右键单击“Microsoft Excel 应用程序”,选择“属性”,打开“Microsoft Excel 应用程序 属性”对话框
(5)选择“安全”选项卡
(6)在“启动和激活权限”中选择“自定义”,并单击“编辑”按钮,打开“启动权限”对话框
(7)单击“添加”按钮,打开“选择用户和组”对话框
(8)单击“高级”按钮,然后单击“立即查找”按钮
(9)在下方的列表中,选择“ASPNET”,并单击“确定”按钮,完成添加
(10)添加完成后,在“启动权限”对话框的“组或用户名称”列表中选择刚才添加的“ASPNET”,设置其所有权限为“允许”
(11)在“Microsoft Excel 应用程序 属性”对话框中,按照上述同样的方法为“访问权限”添加“ASPNET”用户,并设置其所有权限为“允许”

十二、第四次测试网站
1、发现问题:Menu控件的子菜单项全都显示不出来,一片空白
2、解决方法:
(1)在IE浏览器的菜单栏选择:“工具”-“兼容性视图设置”,打开“兼容性视图设置”对话框
(2)将你的网站添加到兼容性视图当中
(3)或者是在“兼容性视图设置”对话框中,直接选择“在兼容性视图中显示所有网站”

十三、第五次测试网站
1、发现问题:读取excel文件的时候,出现错误:Microsoft Jet 数据库引擎找不到对象'Sheet1$'。请确定对象是否存在,并正确地写出它的名称和路径
2、解决方法(感觉是个笨方法,不过赶时间,先解决了问题再说):
(1)原来的代码
string tmpfilename = FileUpload1.PostedFile.FileName;
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + tmpfilename + ";Extended Properties='Excel 8.0;HDR=NO';";
tmpfilename为excel文件的本地路径;
(2)修改代码
string tmpfilename = FileUpload1.PostedFile.FileName;

string uploadpath = this.Server.MapPath("excel");
string filename = tmpfilename.Substring(tmpfilename.LastIndexOf("\\") + 1);
string fileSavePath = uploadpath + "\\" + filename;
FileUpload1.SaveAs(fileSavePath);
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileSavePath + ";Extended Properties='Excel 8.0;HDR=NO';";
也就是说:先将excel文件上传服务器,然后从服务区读取

十四、第六次测试网站
(1)右键单击“我的电脑”,选择“管理”,打开“计算机管理”窗口
(2)依次展开:“Internet 信息服务”-“网站”
(3)右键单击“默认网站”,选择“属性”,打开“默认网站 属性”窗口
(4)选择“网站”选项卡
(5)将“IP地址”由“(全部未分配)”,改为“127.0.0.1”,并单击“确定”
(6)发现问题:在本机(服务器)上通过“http://127.0.0.1/XXX化评估系统/Default.aspx”可以正常访问,但是在局域网的其它电脑上无法访问,显示:“Internet Explorer 无法显示该网页”
(7)解决方法:关闭“Windows防火墙”。依次打开:“控制面板”-“Windows防火墙”,选择“关闭(不推荐)”

十五、我在另外一台电脑上安装的时候,曾经遇到一个问题:能够进入登录页面,但是输入“用户名”和“密码”后,单击“登录”按钮后,页面显示:ExecuteScalar 要求已打开且可用的连接。连接的当前状态为已关闭。如果在VS中运行一切正常,网站发布以后出现这个问题,那一般是数据库的设置问题
1、导致这个问题的可能原因:安装SQL Servier 2005的过程中,在“身份验证模式”页面,选择了“Windows 身份验证”,没有选择“混合模式”
2、解决方法:为SQL Servier 2005开启sa用户

十六、以前安装SQL Servier 2005的时候,曾经遇到一个警告:COM+ 目录要求
以下是网上查到的解决办法,尚未验证
1、启动Distributed Transaction Coordinator 服务
(1)打开服务,在服务中找到Distributed Transaction Coordinator服务,选择“属性”; 
(2)在“登录”选项卡中,选择“此帐户”,帐户名填写“NT AUTHORITY/NetworkService”,密码为空; 
(3)在点击“确定”后重新启动服务。 
(4)或者,在命令行下运行 msdtc -uninstall ,卸载 msdtc 服务; 
(5)再运行 msdtc -install ,安装 msdtc 服务。 
(6)MSTDC服务成功启动,组件服务中“COM+应用程序”可以访问。
(7)如果你也遇到了Distributed Transaction Coordinator 服务不能启动 错误:Distributed Transaction Coordinator 服务因 3221229584 (0xC0001010) 服务性错误而停止。这样解决:
     点开始→运行→输入命令"msdtc -resetlog",运行该命令即可.
2、 按照下列过程重新安装 COM+
(1)安装组件服务管理单元
    1)在 Windows 桌面上,单击“开始”,然后单击“运行”。
    2)在“打开”框中,键入 MMC,然后单击“确定”。
    3)在“控制台”窗口中,单击菜单栏上的“文件”,然后单击“添加/删除管理单元”。
    4)在“添加/删除管理单元”窗口,单击“添加”。
    5)在“添加独立管理单元”窗口,从管理单元列表中选择“组件服务”,然后单击“添加”。
    6)单击“关闭”以关闭“添加独立管理单元”窗口,然后单击“确定”以关闭“添加/删除管理单元”窗口。
    7)在“控制台根节点/组件服务”窗口,展开“组件服务”树。这就是当 COM+ 出现问题时,错误消息可能发生的地方。
    8)再次运行 SQL Server 2005 安装程序。如果收到错误消息,请重新安装 COM+。
(2)重新安装 COM+
    1)从控制面板的“添加或删除程序”中,单击“添加/删除 Windows 组件”。
    2)在“Windows 组件向导”中,不对选择做任何更改,单击“下一步”。
    3)一直单击以完成向导,然后再次运行 SQL Server 2005 安装程序。
    4)解决了COM+问题后,在后面的“检测已经安装的IIS服务”假死现象也随之解决了。

十七、如果先安装NetFramework3.5,后装IIS,就会遇到一系列问题,比如说:访问 IIS 元数据库失败
1、解决方法1:
(1)开始-运行-cmd-输入 
(2)在cmd中输入cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727  
(3)然后aspnet_regiis –i 回车,安装ASP.NET。aspnet_regiis –ga ASPNET回车,使ASPNET可以访问IIS元数据库和ASP.NET使用的相关目录。
2、解决方法2:卸掉IIS5.1重装

十八、HTTP 500 内部服务器错误
解决到十七步,我心理就有点底气了

为了解决这些问题,火没少上,嗓子也坏掉了,喝口水都疼的要死,饭也不能吃,只能喝粥、喝汤,喝得我眼冒金星
为了去客户单位安装程序,我早上6点起床去赶火车,肚子咕噜噜的叫,嗓子火辣辣的疼,怎么办,喝杯牛奶吧,可那家店的店员要我等两分钟,
我哪里等得及啊,火车马上要开了,没办法,只好空着肚子上火车
在火车上,我用手机看小说打发时间,小说的名字叫“燃烧的海洋”
小说里,中国在朝鲜痛殴美国,然后又狠踩小日本
在小日本要倒霉的时候,作者说了一句话:一个糟糕的开端,往往意味着更加糟糕的结局
精辟啊,这句话足以形容我接下来的经历

客户单位不是很远,早上9点就到了,在客户的电脑上安装的时候,那叫一个惨烈啊
最先遇到的就是“HTTP 500 内部服务器错误”。
客户是保密单位,不能上网,我只好用手机上网查找解决方法,累到半死,网上介绍的方法挨个去试,愣是没一个管用的。
实在没招了,换台电脑吧,可是在装数据库的时候,又遇到“”错误,又是手机上网挨个方法去试,生命值急剧下降,只剩1/4,还是没解决。
好吧,再换一台电脑,坑爹啊,再换了一台之后,居然连NetFramework3.5都装不上,此时生命值已经见底了
电脑换来换去,问题一个接着一个,为了解决一个问题,接连又会遇到一系列问题,到最后连我自己都忘了当初要解决什么问题了
最后发现,这样子不是个办法,只好又回到当初第一台电脑上,解决“HTTP 500 内部服务器错误”,网上的方法又挨个去试,还是不成
最后我绝望了,我再也不想见到IIS了,一发狠,拉出去卸了
可问题还是要解决啊,没办法,又把IIS重装了一遍,此时只剩一口气的我用颤抖的手选择“默认网站”,点击“浏览”,然后我只想说三个字--“他妈的”,“HTTP 500 内部服务器错误”居然消失了
生命值迅速回复,好,小命保住了

此时已经是晚上7点多了,整整一天的时间,我没喝一口水,没吃一粒米,但是一点都不饿,为什么?气饱了呗!
嗓子也疼得更厉害了,说话都有点大舌头了

软件装是装上了,但是还有不少小问题,已经没有时间解决了,因为我还要赶晚上8:30的火车回家 --------------------编程问答-------------------- 牛逼的人才 --------------------编程问答--------------------
引用楼主  的回复:
我基于VS 2008 和 SQL 2005为客户开发了一个WEB服务应用程序“XXX评估系统”,虽然是个生手,没有实际开发经验,但是在编程上遇到的问题我都一个个解决了,很有成就感
但是在安装部署的时候,却让我有种生不如死的感觉,大家看看我的经历,兴许会有所帮助

一、安装Internet 信息服务(IIS)
1、打开控制面板
2、选择“添加或删除程序”,打开“添加或删除程序”对话框
3……


缺乏测试经验。或者是你们公司根本就是你一个人在搞开发。

编程不是目的,测试要比编程更接近目的。

当然要是搞测试的人跟编程的人唱反调(而不是促进),那么你们的编程就离开发的目的更远了。 --------------------编程问答-------------------- 我现在就遇到好几个这类问题,就好象说志愿军取胜全指着黄继光一样,其实那一个人对战局根本没有影响。而千百个黄继光这类人能够成为同志,也不是靠军长一个人忽悠出来的。 --------------------编程问答-------------------- 127.0.0.1   局域网想访问,一眼就看到这里了

关闭防火墙就能让局域网访问到你的127.0.0.1 ?
127.0.0.1映射的是localhost  代表的是你的本机哦

而且 在正式应用中 关闭防火墙是很不明智的 --------------------编程问答--------------------
引用 4 楼  的回复:
127.0.0.1   局域网想访问,一眼就看到这里了

关闭防火墙就能让局域网访问到你的127.0.0.1 ?
127.0.0.1映射的是localhost  代表的是你的本机哦

而且 在正式应用中 关闭防火墙是很不明智的


呵呵,您还真的仔细看啊。我都懒得看楼主的“泄愤”。我觉得等楼主将来淡定了,才可以讨论技术问题。 --------------------编程问答--------------------
引用楼主  的回复:
1、新建数据库:“维护作风量化评估系统”


嘿!给别人做这样的系统整人。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,