主要效果是本机调试网站,将网站发布到某域名(如m16758r728.iok.la),可以进入VS断点,不必再用远程调试!!!

环境

VS2015
windows 10操作系统
花生壳(可以用其他内网穿透的软件代替,本文以花生壳为例)

localhost->127.0.0.1&&本机内网IP

产生现象:VS调试发布的站点,localhost可以访问,127.0.0.1和本机内网IP不能访问
产生原因:localhost由ipv6解析,而非ipv4,cmd ping localhost即可发现

 
5

解决方案有以下几种:
(1)修改localhost的本地回环,使localhost指向127.0.0.1,而不是ipv6
(2)卸载ipv6,原理同(1)
(3)本机用IIS Express发布站点,配置网站,使之可以识别127.0.0.1和本机内网IP
(4)用本机IIS发布站点,而非IIS Express,并且将项目URL改为127.0.0.1:port(类似(3),步骤少一些)
方案(1)、(2)以修改电脑配置的方式来解决问题,(3)、(4)以修改网站配置的方式来解决问题

本文采用解决方案(3)
1、以管理员身份运行VS,启动调试
2、找到运行的IIS Express,右键“显示所有应用程序”
选中网站,下面显示了配置路径,打开配置文件进行编辑
该配置文件在.sln同目录的隐藏文件夹.vs\config下,名称为applicationhost.config

 
 

修改配置文件如下:
在sites节点下添加一个site子节点,并binding localhost、127.0.0.1、本机内网IP(cmd ipconfig),端口号任意(之后需与之一致,本文中端口号设置为8081)
修改name和id,保证不重复

 
 

3、停止VS调试,右键项目设置属性
Web-服务器一栏,修改项目URL为127.0.0.1:端口号

 
 

至此,127.0.0.1、本机内网IP可以访问IIS Express发布的站点了

内网穿透,给你的内网IP指定域名

1、下载花生壳客户端,在本机安装并登陆
2、在花生壳网页端申请一个免费的域名,点击“内网穿透”一栏,进行设置

 
 

至此,通过域名m16758r728.iok.la可以访问当前本机VS调试的程序,可以打断点调试

小贴士

1、不用花生壳做内网穿透,可以用以下方式:
https://natapp.cn/
(免费隧道的域名*.natappfree.cc 被恶意举报,被腾讯封锁,将无法用于微信开发.付费隧道的域名可以使用,且尽量绑定二级域名.)
https://www.ngrok.cc/
2、如果在localhost->127.0.0.1&&本机内网IP过程中遇到其他问题,可以参考下列解决方式:
(1)cmd 以管理员身份运行
netsh http add urlacl url=http://127.0.0.1:你的端口号/ user=everyone
netsh http add urlacl url=http://本机内网IP:你的端口号/ user=everyone
(2)关闭防火墙
(3)右击入站规则->新建规则->端口->特定本地端口处输入8080->允许连接->3个选项全选->输入新规则名称->完成
3、这个问题的结论就是“你要访问你的网站,就去找你网站所在的web服务器的ip和端口”

VS发布到IIS Express外网Debug(如微信开发)的更多相关文章

  1. VS发布IIS Express,允许外网调式(如微信开发)

    环境 VS2015 IIS Express win10操作系统 natapp内网穿透 localhost && 127.0.0.1 && 本机内网IP 产生现象:VS调 ...

  2. C# VS启动调试项目允许外网调试(微信开发)

    转发链接:https://blog.csdn.net/sinat_23050697/article/details/62889693 主要效果是本机调试网站,将网站发布到某域名(如m16758r728 ...

  3. windows azure中国 里面建立一个虚拟机,与虚拟机建立通信 里面部署IIS,外网访问

    在windows azure中国 里面建立一个虚拟机,里面部署IIS,外网不能访问么? 外网访问的地址是给的那个DNS地址 ,比如我的是 DNS 名称 urbanairserver.cloudapp. ...

  4. 内网穿透+VS2015自带IIS express实现本地调试(微信等需要将开发环境暴漏到外网的情况使用)

    今天一个兼职结束了,又要开始寻找新的兼职公司了 ,为了贴补家用啊,为了给儿子更好的生活加油! 抒情完毕进入正题,本篇文章要解决的问题是其实在开发微信支付,微信公众号等回调地址必须是外网可访问的80端口 ...

  5. 修改tomcat编码格式 & tomcat发布WEB项目供外网访问

    1.修改tomcat默认编码格式: 修改tomcat下的conf/server.xml文件,找到如下代码:       <Connector port="8080" prot ...

  6. 如何使用花生壳 发布WCF服务 进行外网访问

    当我们发布WCF服务的时候,可以直接通过服务器的域名或者IP进行. 但是如果仅仅是通过花生壳进行域名解析,需要我们自己在设置的时候注意以下几点, 直接用图说明问题 1.首先配置花生壳,在红色处填写一个 ...

  7. 如何使用花生壳 发布WCF服务 进行外网访问 z

    http://www.cnblogs.com/wanglg/p/5375230.html 当我们发布WCF服务的时候,可以直接通过服务器的域名或者IP进行. 但是如果仅仅是通过花生壳进行域名解析,需要 ...

  8. 本地Server发布外网Web应用(Oray实现)

    主要讲解如何将本地当做服务器,发布Web应用至外网访问.   准备条件: 1.web应用服务(此处为Tomcat作为web应用服务器): 2.花生壳应用:   第一步,正常搭建本地web项目,应用名为 ...

  9. VS2013无法启动 IIS Express Web解决办法

    开发环境:windows8.1+VS2013 使用VS2013有一段时间了,因前期都是编写C/S程序,没有使用到B/S调试器.前几日,创建了一个MVC项目,突然发现VS2013无法调试,报了这样的错. ...

随机推荐

  1. $.getJSON 跨域

    //支持跨域 $.getJSON(url + '&callback=?', function(res) { if (res.status === 0) { console.log(res.re ...

  2. oracle listener.ora的host不能使localhost,而应该是该机器名,否则不能用ip地址进行连接

    # listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/lis ...

  3. [Node.js] Create a model to persist data in a Node.js LoopBack API

    In this lesson you will learn what a LoopBack model is, you will create a Product model using the Lo ...

  4. Android 升级到android studio 2.2项目死活run不起来

    背景:升级到Android studio 2.2项目死活运行不起来 现象如下: run with --stacktrace --debug等等抛出的bug简直无法忍视 解决办法:把compileSdk ...

  5. Quartz.NET 3.0.7 + MySql 实现动态调度作业+动态切换版本+多作业引用同一程序集不同版本+持久化+集群(一)

    原文:Quartz.NET 3.0.7 + MySql 实现动态调度作业+动态切换版本+多作业引用同一程序集不同版本+持久化+集群(一) 前端时间,接到领导任务,写了一个调度框架.今天决定把心路历程记 ...

  6. ssh登录很慢,登录上去后速度正常问题的解决方法

    1. DNS反向解析的问题 OpenSSH在用户登录的时候会验证IP,它根据用户的IP使用反向DNS找到主机名,再使用DNS找到IP地址,最后匹配一下登录的IP是否合法.如果客户机的IP没有域名,或者 ...

  7. SqlBulkCopy 帮助类

    using System;using System.Collections.Generic;using System.Configuration;using System.Data;using Sys ...

  8. python2.x脚本转换为python3.x脚本的方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/dushu990/article/details/73549174 python2.x脚本转换为pyt ...

  9. 已解决!Fatal error compiling: 无效的标记(maven启动失败)

    问题描述 Fatal error compiling: 无效的标记 maven启动错误..版本号不对 <plugin> <artifactId>maven-compiler-p ...

  10. Swift API设计原则

    注: 本文摘自 Swift API设计指南 一.基本原则 通俗易懂的API是设计者最重要的目标.实体.变量.函数等都具有一次申明.重复使用的性质,所以一个好的API设计,应该能够使用少量的解读和示例就 ...