win7中用 httplistener 出现 503 错误的问题
项目中须要用httplistener提供一个简单的httpserver服务。可是执行都是提示:
UnHandledException Message:拒绝訪问
在System.Net.HttpListener.AddAll()
在System.Net.HttpListener.Start()
网上查了下,好像是UAC权限的问题,网上找到了以下的解决的方法:
为程序加入了管理员权限执行的manifest配置文件,依旧不能解决,手动设置程序以管理员权限执行能够通过
解决改问题的方法:
以管理员权限执行cmd
输入: netsh http add urlacl url=http://+:9527/icon user=DOMAIN\user
注:DOMAIN 即计算机名
比如我的user=cmdszh_comperny\cmdszh
把以上操作写为C#代码例如以下(主程序一定在manifest中配置UAC权限)
public static void AddAddress(string address)
{
try
{
AddAddress(address, Environment.UserDomainName, Environment.UserName);
}catch(Exception ex){}
}
public static void AddAddress(string address, string domain, string user)
{
string argsDll = String.Format(@"http delete urlacl url={0}", address);
string args = string.Format(@"http add urlacl url={0} user={1}\{2}", address, domain, user);
ProcessStartInfo psi = new ProcessStartInfo("netsh", argsDll);
psi.Verb = "runas";
psi.CreateNoWindow = true;
psi.WindowStyle = ProcessWindowStyle.Hidden;
psi.UseShellExecute = false;
Process.Start(psi).WaitForExit();//删除urlacl
psi = new ProcessStartInfo("netsh", args);
psi.Verb = "runas";
psi.CreateNoWindow = true;
psi.WindowStyle = ProcessWindowStyle.Hidden;
psi.UseShellExecute = false;
Process.Start(psi).WaitForExit();//加入urlacl
}
兴许问题。依照上面说的设置好了之后。在某台电脑上输入保留的url。竟然不行,每次都是提示503错误。从127.0.0.1改成localhost,改来改去死活不行,郁闷至极,认为是不是这台电脑上的某个服务没有启动,找了找实在太多了也无果而终。第二天来了后试了试其他的port。结果就能够了。于是想研究一下httplistener机制。网上看了一些介绍,确实了解了非常多,关于WCF机制,可是好像没有跟这个问题相关的。大致浏览了下,自己还是了解的太浅。以后有时间继续研究。
突然出来了一个aha moment。由于上面主要是加入urlacl链接,于是想研究一下netsh命令的使用方法,能不能把之前加入的url列出来,到这个时候,已经開始往正确的道路上走了。于是网上搜了netsh的使用方法,而且自己也用“?”选项列出帮助,终于列出全部加入的url的时候,一下子就明确了,由于在监听port上有另外一个地址接收了请求,而实际并没有相应的服务。
详细是这样,刚開始測试,用了一个暂时uri http://localhost:10000/myuri/ 而出现503的链接是http://localhost:10000/myuri.rem/ 这样就清楚了,10000port上的myuri并没有服务,而是在myuri.rem上提供了服务。可是注冊的myuri提前监听了来自10000上的请求,而它没有相应的服务去回应,自然就是503了。
win7中用 httplistener 出现 503 错误的问题的更多相关文章
- win7 iis 7.0 碰到 503错误,找到的解决方案
Service Unavailable HTTP Error 503. The service is unavailable. 今天要布署一个网站,在自己的电脑上,结果碰到服务器503错误,找应用程序 ...
- .net的页面在大并发下偶尔出现503错误
我们开发了一个回调页面,由一个工具负责调用,由于压力非常大,回调页面通过6台服务器负载均衡的: 最近业务系统又再次扩容,回调页面压力成倍增加,在高峰时间段偶尔出现了503错误. 拿到这个问题首先对系统 ...
- .net的页面在大并发下出现503错误
.net的页面在大并发下偶尔出现503错误 我们开发了一个回调页面,由一个工具负责调用,由于压力非常大,回调页面通过6台服务器负载均衡的: 最近业务系统又再次扩容,回调页面压力成倍增加,在高峰时间段偶 ...
- 压力测试报出503错误---ASP.NET支持大并发的相关配置
项目反馈报出503错误,需要收集性能数据如下: 1.Windows性能监视器,该应用程序池进程的线程和处理队列 2.问题重现时的进程dump 这是请求到达IIS后遇到的第一个队列,HTTP.sys收到 ...
- 访问网页时提示的503错误信息在IIS中怎么设置
访问网页时提示的503错误信息在IIS中怎么设置 503是一种常见的HTTP状态码,出现此提示信息的原因是由于临时的服务器维护或者过载,服务器当前无法处理请求则导致了访问网页时出现了503错误.那么当 ...
- windows Server 2008 IIS7 503错误解决方案
windows 2008 R2 在访问的时候经常会出现503错误,于之前使用的是默认配置,服务器最多只能处理5000个同时请求,今天下午由于某种情况造成同时请求超过5000,下面是具体的解决方案: w ...
- HTTP 503 错误 – 服务不可用 (Service unavailable)
介绍 因暂时超载或临时维护,您的 Web 服务器目前无法处理 HTTP 请求. 其含义是, 这是一个暂时情况,会有一些延误, 过 后将会得到缓解. 有些服务器在这种情况下也许干脆拒绝套接字(socke ...
- ActiveMQ 503错误
问题描述: 在Linux系统下安装ActiveMQ,启动服务 正常启动后,通过浏览器进行访问 可以正常显示home页面,但是点击其他菜单,如Queues,Topics等,都会出现503错误,如图 问题 ...
- phpmyadmin无法访问503错误的解决方法
昨天ytkah更新了一些服务器软件,今天访问数据库居然出现503错误,主要提示如下.点开phpmyadmin设置,查看了一下端口,没有改动:重启了一下phpmyadmin也不能运行:再看了一下php版 ...
随机推荐
- javaScript属性
------------------------------------行内样式------------------------------------ *基本标签html 网页的开始标记head 网 ...
- JS中!=、==、!==、===的用法和区别
1.对于string,number等基础类型,==和===是有区别的 1)不同类型间比较,==之比较"转化成同一类型后的值"看"值"是否相等,===如果类型不同 ...
- .Net 中通用的FormatString格式符整理
格式化日期和数字的字符串经常要用到这个, 就把帮助里面的东西大概整理了一些列在这里了. 下表描述了用来格式化 DateTime 对象的标准格式说明符.格式说明符 名称 说明 d 短日期模式 显示由与当 ...
- 主机和VMware中的Linux如实现共享文件夹
当我在网上查了几小时的挂载文件夹方法后发现,VMware中的Linux的挂载和双系统的挂载不同 最终目的就是在/mnt目录下有个hgfs的文件夹 效果图: 首先打开VMware中的Linux系统 具体 ...
- Python进阶---面向对象的程序设计思想
Python的面向对象 一.面向过程与面向对象的对比 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优 ...
- Python和Excel交互
Python和Excel交互 使用的python包为XlsxWriter 下载的链接 https://pypi.python.org/pypi/XlsxWriter 初级的例子: def write_ ...
- Xshell 的安装教程
Xshell就是一个远程控制RHEL的软件:其他的还有很多,用什么都无所谓(根据公司情况). 下面我们来安装下这个工具: 双击exe 点下一步: 选 免费的 然后下一步:(免费的功能足够用了) 点接受 ...
- javascript第十章--Ajax与Comet
① XMLHttpRequest对象 ② XMLHttpRequest2级 ③ 进度事件 ④ 跨域源资源共享 ⑤ 其他跨域技术
- shell 备份脚本
[root@izwz9hmoz58gvtu0ldpm0iz ~]# cat /usr/local/aaaa/shell_script/Mysql_Dump_LJY.sh #! /bin/bash to ...
- win10环境下tensorflow-gpu安装
踩了很多坑,浪费了一下午时间,在此记录一下. pip install tensorflow-gpu 然后下载安装cuda8.0 https://developer.nvidia.com/cuda-do ...