Win7下配置IIS服务器以及网站发布
本文摘至于:http://heavengate.blog.163.com/blog/static/202381053201391111512986/
1、vsual Studio 2010下利用本地IIS进行网站发布
1)打开IIS管理工具,新增网站"WSTest",设置物理路径及端口:
2)设置好"网站名称"、"物理路径"、"端口"、默认页面后,解决出现的问题,确保路径:
http://localhost:8089能够正常访问。
3)打开Visual Studio 2010,新建项目WSTest:
4)右键解决方案下的网站WSTest,选择"发布":

5)将网站发布到1)中设置的物理路径E:\\myiis下,使用FTP的发布方法,即使用FTP的方式,将WSTest网站发布到物理路径E:\\myiis下。

点击发布,Visual Studio 2010左下角会显示发布成功。
6)此时我们可以进入物理路径E:\\myiis下,查看发布的网站文件:

7)进入IIS,对WSTest网站设置重新启动:
8)网址中输入http://localhost:8089/,可以进入网站主页:

网站发布成功!
- Visual Studio 2010下利用本地IIS发布WebService:
本示例主要进行WebService测试。在(一)的基础上,对WSTest进行扩展:
9)在Visual Studio 2010下,右键网站WSTest,添加—>新建项:

10)选择Web服务,命名为"myws.asmx":
11)对添加的webservice简要修改,将myws.asmx.cs文件中默认的HelloWorld方法进行简要修改,用于测试:
12)对网站进行生成,重新发布,与步骤5)一致:

13)在浏览器中输入网站:http://localhost:8089/myws.asmx
可以看到,服务能正常运行:

14)点击HelloWorld可以进行,方法的测试:
为了更进一步的测试Webservice,我们在WSTest解决方案下,建立一个新的项目作为客户端进行测试:
15)在WSTest解决方案下,新建项目:

16)新建一个控制台应用程序,命名为Client:

17)此时WSTest解决方法下,有两个项目,一个为Client,一个为WSTest:

18)在项目Client中,右键引用"添加服务引用":

在这里,会有两种情况:
(1)我们点击"发现",此时会找到一个http://localhost:5936/myws.asmx的web服务:

(2)我们输入http://localhost:8089/myws.asmx,然后点击"前往",此时也能找到一个web服务:
这两种情况都能找到Web服务,第一个发现找到的是Visual Studio2010下,默认的iis里面的,第二个是我们本地的iis里面的服务,也就是我们之前发布到物理路径E:\\myiis下的web服务,明显,这次我们要测试本地的iis发布web服务,故而选择第二种方式,命名为WService:
19)此时我们看到Client项目中已经将WService服务引用进来:

20)接下来,我们使用Client对WSTest进行测试,打开工程下默认的program.cs进行编辑:
namespace Client
{
class Program
{
static void Main(string[] args)
{
WService.mywsSoapClient ms = new WService.mywsSoapClient();
while (true)
{
Console.Write("请输入");
string str = Console.ReadLine();
Console.WriteLine(ms.HelloWorld(str));
}
}
}
}
解析:使用web服务的方式为:
- 新建服务:服务名.服务名SoapClient ms(自定义)= new服务名.服务名SoapClient()
- 对新建的服务,调用方法服务的方法即可:如ms.HelloWorld()
选择Client,右键设置为"设为启动项",运行效果如下:

服务调用成功!
VisualStudio网站发布的三种方案:
http://wenku.baidu.com/view/ca3bafa6b0717fd5360cdcc8.html
尝试过,不过好像不是很成功!
Webservice常见问题:
- 客户端调用Web服务的时候,一开始是没有问题的,后面对web服务更新以后,此时如果再次在客户端更新服务引用,会引发这样一个问题:
错误 X 自定义工具错误: 无法生成服务引用"XXXXXXXXX"的代码。请检查其他错误和警告信息,了解详细信息。
原因:添加一个服务引用时,你必须为每个服务引用提供唯一的新命名空间。导入的类型会定义在这个新的命名空间中。如果为共享了相同数据契约的两个不同服务添加引用,就会出现问题,因为你得到了两个不同的类型,在两个不同的命名空间,表示的却是相同的数据契约。然而,默认情况下,如果被客户端引用的任意一个程序集包含的数据契约,与已经暴露在引用服务元数据的数据契约类型匹配,Visual Studio 2008/2010就不会再次导入。需要再次强调的是,已有的数据契约引用必须是在另一个引用程序集中,而不是在客户端项目自身。这一限制会在未来的Visual Studio版本中提供,而目前最方便的弥补措施与最佳实践则为:将所有共享的数据契约分解到指定的类库中,并让所有的客户端引用该程序集。然后,通过服务引用的高级设置对话框(参见下图),可以控制和配置引用程序集(如果存在)与有关的共享数据契约进行协调。"Reuse types in referenced assemblies"检查框默认是被选中的,但如果你需要也可以关闭这一功能。顾名思义,你只能共享数据契约,却不能共享服务契约。使用里面的单选按钮,可以让Visual Studio 2008/2010跨所有的引用程序集重用数据契约,或者通过选择列表项限制对特定程序集的共享。
解决方案:
- 在需要更新的服务上,右键"配置服务引用(Configure Service Reference)",将"重新使用引用的程序集中的类型(Reuse types in referenced assemblies)"这个勾取消,这样就能安全的重新引用服务。
(b) 小贴士:取消后,再次勾选,依然可以正确生成Web服务引用。这样可以避免一个问题:如果Web服务本身和引用服务的项目使用共享项目,可以避免由代理类生成而造成的引用冲突。
Win7下配置IIS服务器以及网站发布的更多相关文章
- win7下配置IIS服务器方法
网站爱好初学者必看的win7系统配置自己的IIS,可以在你自己的电脑上配置网站服务器发不到网上,下面就跟着我的步骤一起做吧100%成功. 步骤方法 1.点击开始-------控制面板这个就是打开的控制 ...
- win7下使用IIS服务器及自定义服务器端包含模块(SSI)步骤
配置完过段时间就容易忘记,特此记录. 1.开启IIS服务器. 默认没有安装,需要先安装. 打开控制面板–> 打开“程序和功能”–> 左侧选择“启用或关闭windows功能”–> 找到 ...
- 问题:win7下配置好服务器就是不能查询数据库。(已解决)
我用C写访问mysql的CGI程序,可以执行. 但是,当我写好网页再去访问这个CGI,出现下面的错误 我的环境是:IIS作为服务器,MYSQL数据库,VC++6.0写CGI. 跟踪了一下,发现只要我调 ...
- win7下配置IIS
Internet Information Services(IIS,互联网信息服务),是由微软公司提供的基于运行Microsoft Windows的互联网基本服务.最初是Windows NT版本的可选 ...
- win7旗舰版下配置IIS服务器
选择上述的插件后,Windows 需要更新一段时间,并重启电脑 测试是否安装成功:http://localhost 注意:默认端口号是 80,不能和tomcat 的 80 端口同时重启 常 ...
- 如何在win7下配置IIS?
- 【转载】网站配置Https证书系列(二):IIS服务器给网站配置Https证书
针对网站的Https证书,即SSL证书,腾讯云.阿里云都提供了免费的SSL证书申请,SSL证书申请下来后,就需要将SSL证书配置到网站中,如果网站使用的Web服务器是IIS服务器,则需要在IIS服务器 ...
- win8 iis安装及网站发布
win8 iis安装及网站发布 系统:win8 环境:vs2012 一:安装IIS 比较win7的安装来说,多选了几个钩钩,不然会报错,偶就遇到这样的错误. 控制面板->程序和功能->启动 ...
- 安装SQL SERVER2005时,需要win7下安装IIS,记录下
安装SQL server2005 时,需要先安装IIS,这里描述win7系统下配置IIS的方法. 虽然很多文章都有写过,这里只是重复一下 关键是IIS组件全都勾选上,如果没有全部勾选上,IIS组件没有 ...
随机推荐
- spring boot配置redis
- nvl(sum(字段),0) 的时候,能展示数据0,但是group by 下某个伪列的时候,查不到数据(转载)
今天碰到一个比较有疑惑的问题,就是在统计和的时候,我们往往有时候查不到数据,都会再加个 nvl(sum(字段),0) 来显示这个字段,但是如果我们再加个group by ,就算有加入这个 nvl(nu ...
- 域名到IP 报错socket.gaierror: [Errno 8] nodename nor servname provided, or not known
Python中如何通过域名,查看对应的IP? 请看如下代码: import socket hostname="www.baidu.com" ip = socket.gethostb ...
- 动态执行文本vba代码
动态执行文本vba代码 Public Sub StringExecute(s As String) Dim vbComp As Object Set vbComp = ThisWorkbook.VBP ...
- Python 中的type和object详解
1.python中的类 Python2.x 中的类分为两种,一种是所有继承自object的新式类,另外一种是经典类classobj, 新式类的写法: class A(object): pass 经典类 ...
- 【转】java导出多个excel表格,并压缩成zip输出
转自:http://blog.csdn.net/qq_14861089/article/details/53169414 感谢作者分享 /** * 导出支付宝批量支付文件excel * * @p ...
- 通过ssh管道连接内网数据库(mysql)
公网连接内网数据库(如云数据库)时,通常需要白名单:如果不是白名单IP,通常需要一个跳板机(类似代理)来连接内网数据库, 下方以mysql为例(其他数据库基本一致): import pymysql a ...
- Sass简单使用
Sass是成熟.稳定.强大的CSS预处理器,而SCSS是Sass3版本当中引入的新语法特性,完全兼容CSS3的同时继承了Sass强大的动态功能. 特性概览 CSS书写代码规模较大的Web应用时,容易造 ...
- VS2015服务器资源管理器连接Mysql数据库
下载安装文件mysql-for-visualstudio-1.2.3.msi 下载成功后执行安装,选择change-->选择Custom安装成功后,发现vs中没有效果. 注意这里再次执行安装文件 ...
- 重学Python - Day 06 - python基础 -> linux命令行学习 -- 简单基础命令学习
学习资源 虚拟机工具:VMWare 12 linux :Ubuntu 14 或者CentOS 6 PS:ubuntu用远程连接工具的设置方法 step 1: 输入sudo apt-get instal ...