don*_*lan 186 asp.net iis-express asp.net-web-api visual-studio-2012 ngrok
从以前版本的问题,有这样的:浏览网站的IP地址而不是localhost,这几乎概括了我到目前为止所做的事情......我已经有了本地IP工作.然后我找到了ngrok,显然我不需要通过IP连接.
我想要做的是将我在localhost上运行的网站暴露给互联网.我找到了一个可以做到这一点的工具:ngrok.
在visual studio中运行该网站,该网站在localhost/port#上启动.我在命令行中运行命令"ngrok http port#".一切似乎都很好.我生成了几个URL,并且ngrok检查URL(localhost:4040)可以工作.
唯一的问题是,当我转到生成的URL时,我收到一个HTTP错误400:错误的请求无效的主机名.这是一个不同的错误,当我运行"ngrok http wrongport#",这是一个主机未找到错误...所以我觉得好事正在发生.我只是不知道是什么......
在通过隧道服务将我的网站暴露给互联网时,我是否缺少一个步骤?如果有,我在ngrok文档中找不到它.
don*_*lan 486
ngrok麻烦了这个问题.用不可理解的话来说,一些应用程序在看到不同于预期的主机头时会生气.
运行以下命令应该可以解决问题:
ngrok http [port] -host-header="localhost:[port]"
Run Code Online (Sandbox Code Playgroud)
但是,这可能不是一个全面的解决方案(显然至少有一个不同的情况会导致这个问题),所以请查看其他答案
小智 40
以下命令将解决问题
ngrok http -host-header=localhost 8080
Run Code Online (Sandbox Code Playgroud)
Ste*_*vds 35
这不适合我.你可以做以下事情:
对于IIS Express
在VS 2015中:转到.vs\config\applicationhost.config项目中的文件夹
在VS 2013及更早版本中:转到 %USERPROFILE%\My Documents\IISExpress\config\applicationhost.config
找到说的绑定:
<binding protocol="http" bindingInformation="*:5219:localhost" />
Run Code Online (Sandbox Code Playgroud)
对我来说,这是一个在5219端口上运行的项目
改为
<binding protocol="http" bindingInformation="*:5219:" />
Run Code Online (Sandbox Code Playgroud)
IIS Express现在将接受该端口上的所有传入连接.
缺点:您需要以管理员身份运行IIS Express.
或者你可以在Ngrok中重写主机头:
ngrok.exe http -host-header=rewrite localhost:5219
Run Code Online (Sandbox Code Playgroud)
更新了最新版本的命令
测试用: (Windows) (ngrok v3.0.5)
使用--而不是-
ngrok http --host-header=localhost 8080
| 归档时间: |
|
| 查看次数: |
61719 次 |
| 最近记录: |