IIS发布WebService的一些常见问题
- 安装IIS过程,在控制面板程序à程序功能à打开或关闭windows功能。
将Internet信息服务中的选项全部选中,点击确定。
- 验证IIS是否正确安装,等待几分钟后IIS配置完成在浏览器输入http://localhost看是否安装成功。
- 发布服务的方式:①接下来是发布服务的情况,可以将服务直接放在C:\inetpub\wwwroot目录下,C:\inetpub\wwwroot即为网站的根目录,输入相应的网址即可访问(仅能在本地测试,不建议)。②通过Internet信息服务(IIS)管理器发布网站,先在 vs上生成网站à发布网站。“生成”->“发布网站”,这里会弹出一个对话框,什么也不需要修改,记下发布的目录。比如:D:\ WebSite1,我们需要目录下的文件。在IIS管理器 - 网站-新建网站(根据具体情况确定应用程序池以及是否新建主要修改选项:.net版本,windows是32还是64主要涉及的是编译的dll是32还是64位的) -自己新建网站下新建一个虚拟目录(注意修改端口),比如webservice,并将发布目录中的所有文件和目录拷贝到这个目录中。可以通过访问http://localhost/webservice/Service.asmx来验证。(注意:在①测试时很多用到的文件需要放在根目录C:\inetpub\wwwroot才能执行)
- 配置注意事项:在这里要说一下是先装的vs还是iis。(建议先装iis)若先装的vs那么需要重装.net framework,否则可能出现HTTP Error 500.21。原因:在安装Framework v4.0(版本可以改)之后,再启用IIS,导致Framework没有完全安装。解决:开始->所有程序->附件->鼠标右键点击“命令提示符”->以管理员身份运行->%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i。
说一下可能出现的问题:
HTTP 错误 500.24 - Internal Server Error检测到在集成的托管管道模式下不适用的 ASP.NET 设置。(多是托管管道模式不正确)
打开IIS管理器,选择应用程序池——你的网站应用程序池——单击右侧的“设置应用程序池默认设置”,打开,在常规中,将“启用32位应用程序”设置为“True”,将“托管管道模式”改为Classic,最后单击“确定”。
HTTP Error 503。The service is unavailable
地址错误,主机没找到!
在IIS7.0中看到应用程序的应用程序池中的经典模式不知道怎么的就自己停止了。需要启动应用程序池。
重新注册.net framework
今天在部署网站时出现了下面的错误:
Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.]
原因是在安装了IIS后又装了其他版本的framework, 导致assemble中的版本和程序使用的版本不一致了。
解决办法是使用 aspnet_regiis.exe -iru 重新注册iis。
操作如下:
使用administrator权限开启command promt(一定要用管理员权限打开,否则注册不上)
进入framework的文件夹(C:\Windows\Microsoft.NET\Framework\),选择相应的版本下的文件夹(v4.0.30319),使用命令
aspnet_regiis.exe -iru
等注册完成后网站就可以打开了。
重注册2.0的方法同上
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe –i
The test form is only available for requests from the local machine.
在web.config文件 <system.web>标签内添加如下标签
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容.
IIS管理器->对应的应用程序右侧视图窗口,双击“目录浏览”->选择启用,即可
当只是在本地测试时可以不发布直接放在根目录,发布后则不会出现以下问题,要启用目录浏览
是否启用32位系统(某些dll不可用)
有些dll文件是32位系统编译的,那么在IIS下必须使用32位系统应用程序否则会
dll文件是在64位机下编译的,而你的服务器是32位机,所以无法调用
或者你的dll文件是在64位开发环境下下编译的,而你现在的调用程序是的32位,所以无法调用
异常详细信息: System.Runtime.InteropServices.COMException: 异常来自 HRESULT:0xE004002A
吧所要操作的文件所在目录的目录权限设置为对 Everyone 都是完全控制。方法是在文件夹上点右键选属性,选安全然后添加 Everyone 完全控制。
异常来自 HRESULT:0x80040228
多是ArcGIS的license许可问题
在服务器以访问在其他客户端不能访问
防火墙需要添加设置项:防火墙——>高级设置——>入站规则——>右边的新建规则——>端口——>选择TCP——>特定本地端口(填写你的端口 如4300)——>记得填写自记的网站名称以便于下面的“允许通过”——>下一步……完成。
IIS发布WebService的一些常见问题的更多相关文章
- IIS 发布webservice 需要用户名和密码访问 解决
今天,我在IIS上发布了一个自己写的webservice,然后我在远程通过浏览器来访问这个webservice的时候出现一个登录界面如下 之前我朋友发布webservice的时候也出现过一次,那次好 ...
- IIS 发布 WebService 连接DB2数据库报错如下图
环境描述: 系统环境: Windows Server 2012 R2 IIS版本:IIS 6.2 C#环境:.NET Framework 4 DB2版本:9.7.500.702 ...
- ASP.NET IIS发布WebService成功了,但是不显示参数界面
当您尝试从远程计算机访问 Web 服务时,不会显示“调用”按钮.并且,您会收到以下错误信息: The test form is only available for requests from the ...
- C# 通过WebService方式 IIS发布网站 上传文件到服务器
应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发环境:VS2010 服务器环境:WinServer2008 虚拟机环境:WinServer2008 ...
- Java调用IIS发布的WebService
之前的一篇博客说了一个实例,就是用VS2005在IIS上发布WebService.今天我们来实现在Eclipse上用Java来调用昨天发布的WebService. 首先咋在浏览器中输入http://1 ...
- C# 通过WebService方式 IIS发布网站 上传文件到服务器[转]
http://blog.sina.com.cn/s/blog_517cae3c0102v0y7.html 应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发 ...
- VS2015发布Webservice
第一步:开启IIs:在控制面板程序——>程序功能——>打开或关闭windows功能,把“Internet信息服务”下面的“FTP服务器”.“Web管理工具”.“万维网服务”全部勾上,然后点 ...
- FTP方式发布webservice
以前我发布webservice的步骤是:在 C:\inetpub\wwwroot\路径下发布webservice,然后再在IIS中添加网站并制定路径,这样每次发布了webservice后,需要把发布 ...
- IIS发布站点错误收集(持续更新)
本文主要收集IIS在发布站点过程中遇到的错误,并提供解决办法.并亲测可行.如果您也在使用IIS发布站点的过程中遇到了一些问题,欢迎留言提问. (1.) HTTP错误500.21-Internal Se ...
随机推荐
- 报表Reporting S而vice是 错误的解决
Reporting Services 错误 报表服务器无法打开与报表服务器数据库的连接.所有请求和处理都要求与数据库建立连接. (rsReportServerDatabaseUnavailable)获 ...
- c++11 右值引用、move、完美转发forward<T>
#include <iostream> #include <string> using namespace std; template <typename T> v ...
- 转载,find.sh
#!/bin/bash #find files contains a keyword #write by xiaojing.zhao #2012.12.14 echo -e "\nThis ...
- java模式:模板模式的简单理解
1.模板模式就是用虚类作为基类将几个要执行差不多操作中相同的部分提取出来,不同的部分各自实现! 2.下面给出简单栗子: 我要进行的操作是将大象和狐狸放入冰箱,放入大象和狐狸有相同的步骤:开冰箱和关冰箱 ...
- 使用dom4j解析XML例子
包括三个文件:studentInfo.xml(待解析的xml文件), Dom4jReadExmple.java(解析的主要类), TestDom4jReadExmple.java(测试解析的结果) 代 ...
- 如何用好 Google 搜索引擎?
1.双引号 把搜索词放在双引号中,代表完全匹配搜索,也就是说搜索结果返回的页面包含双引号中出现的所有的词,连顺序也必须完全匹配.bd和Google 都支持这个指令.例如搜索: “seo方法图片” 2. ...
- 2015十大顶级开源ERP系统点评
如今,企业资源规划(ERP)和客户关系管理(CRM)系统的必要性已经被各种组织和企业所认可:ERP和CRM能够直接为企业的业务效率和利润做出贡献. 但是随着今天企业商业形态的日趋多样化,互联网新经济的 ...
- JS中三目运算符和if else的区别分析与示例
本文是通过示例详细分析了JS中三目运算符和if else的区别,是篇非常不错的文章,这里推荐给大家. 今天写了一个图片轮播的小demo,用到了判断 先试了一下if else,代码如下: 复制代码代 ...
- 注意:MainActivity的oncreate方法里不要再inflate布局了(MainActivity里的点击事件无响应)
activity_main已经通过setContentView(R.layout.activity_main);设置给MainActivity, 不要再inflate出新布局,然后findviewby ...
- listview去掉条目间的分割线
未去掉前: 去掉后: java代码可以这么写: 1 listView.setDivider(null);//去掉条目间的分割线 PS:ListView的几个常用操作 listView ...