带有隧道工具的 IISExpress:请求主机名无效
Posted
技术标签:
【中文标题】带有隧道工具的 IISExpress:请求主机名无效【英文标题】:IISExpress with tunneling tool: The request hostname is invalid 【发布时间】:2019-07-19 11:45:56 【问题描述】:我启动了一个非常简单的 ASP.net web api 应用程序。在 8080 端口上。 我用ngrok作为隧道工具获取转发ip地址:
使用邮递员,我通过以下请求发布到本地服务器 http://ccf7e40b.ngrok.io/Bot/messages 并得到错误:“HTTP 错误 400。请求主机名无效。”。但是,用 localhost:8080 替换转发 url 会起作用。 我已经看到其他几个具有相同错误消息的帖子通过在 Documents\IISExpress\config\appilcationHost.config 中添加绑定行以绑定到特定端口来解决。但是我已经在 8080 端口上运行了。
我正在使用 Visual Studio 2017。
【问题讨论】:
您可以通过 VS 中的工具 -> 扩展使用我们的免费扩展“Conveyor”。 Conveyor 将为您提供一个远程 URL 和端口,该端口是您需要将 ngrok 指向的端口,或者您可以注册 Conveyor 的隧道服务。 【参考方案1】:您必须使用修改后的主机头。所以在你的情况下,它应该适用于:
ngrok.exe http -host-header=rewrite localhost:8080
【讨论】:
以上是关于带有隧道工具的 IISExpress:请求主机名无效的主要内容,如果未能解决你的问题,请参考以下文章
带有 MFA 的 Navicat 或 MySQL Workbench SSH 隧道