IISExpress从远程机器返回503错误。

14 浏览
0 Comments

IISExpress从远程机器返回503错误。

我正在尝试在本地网络上的其他设备上测试我在本地IISExpress实例中运行的网站。我使用的是Win7 Pro操作系统。

当我首次尝试从本地网络段的另一台设备上浏览到我的机器时,我收到一个400错误:主机名无效。

我了解到我需要使用提升权限的命令在命令提示符中授予ACL远程访问权限,类似于以下命令:

netsh http add urlacl url=http://mymachinename:50333/ user=everyone

现在,我收到一个503服务不可用的错误。

Windows防火墙目前已关闭,我能够通过地址http://localhost:50333浏览我的本地IISExpress实例。

这个配置问题的最后一块是什么?

0
0 Comments

问题的出现的原因:问题出现的原因是因为使用IIS Express时,从远程机器访问时返回503错误。尝试使用IP地址访问时仍然返回503错误。

解决方法:最终的解决方法是在配置文件中使用特定的绑定信息。使用*:portnumber:*的方式无效。只有使用localhost才能正常工作。尝试使用真实的IP地址或主机名时,仍然返回503错误。最终的配置文件如下:

<binding protocol="http" bindingInformation="*:53351:localhost" />
<binding protocol="http" bindingInformation="192.168.1.50:53351:*" />

这样,就可以通过http://192.168.1.50:53351从远程机器连接到IIS Express。

另外,也可以使用通配符在配置文件中动态地指定IP地址和主机名,如下所示:

<binding protocol="https" bindingInformation="*:44300:*" />

<binding protocol="http" bindingInformation="*:8888:*" />

这样,在配置文件中不需要硬编码当前的IP地址,因为它可能会发生变化。

0
0 Comments

问题:IISExpress在远程机器上返回503错误的原因和解决方法

在使用IISExpress时,有时候会遇到从远程机器上访问时返回503错误的情况。下面是一些解决这个问题的方法:

1. 检查applicationhost.config文件中是否缺少绑定信息的条目。该文件的可能位置有:

- %userprofile%\Documents\IISExpress\config\applicationhost.config

- $(solutionDir)\.vs\config\applicationhost.config (VS2015)

- 如果以上位置都没有找到,可以通过检查iisexpress.exe的输出来确定。

2. 找到你的WebSite条目,并添加以下绑定信息,使用你的机器名称:

3. 重启IIS Express。

4. 有时候IIS Express并不总是使用指定的配置文件路径。仔细阅读iisexpress.exe的输出,可以确定它使用的是哪个配置文件。

5. 重启IIS Express,可以通过在系统托盘中定位IIS Express图标并停止它强制它重新启动。

6. 另一个可能的原因是HTTPS端口必须在44300-44399的范围内,才能使用IIS Express提供的自签名证书。换句话说,端口44900将无法工作,除非进行额外的配置。

7. 如果你懒得为每个主机名/ IP地址组合添加绑定信息,可以使用*代替"your-machine-name"。

8. 从命令提示符中启动时,如果使用iisexpress.exe的/path选项而不是/config选项,IIS Express将复制配置并将绑定更改为localhost。

9. 有人发现使用可以工作。他使用ngrok http 5001创建了隧道。对他来说,关键的部分是修改了$(solutionDir)\.vs\config\applicationhost.config中的配置。

10. 另一个提示是,如果右键单击IISExpress的系统托盘图标,可以选择"Show all applications",这将打开一个对话框,显示你当前在本地运行的所有应用程序。右键单击所需的应用程序(不要左键单击,否则会打开浏览器),然后你将看到下面的"Path"和"Config"。左键单击"Config",它将打开相关的Applicationhost.config文件,在这里需要根据上面的描述添加/编辑绑定信息。这是一个定位当前配置的简单方法。

11. 在Windows 8.1上,IIS Express的applicationhost.config文件位于C:\Windows\System32\inetsrv\config。

12. applicationhost.config文件也可能位于$(solutionDir)\.vs\Core\config\applicationhost.config。在解决503错误之前,可能需要更新这个文件。

通过添加绑定信息到applicationhost.config文件并重启IIS Express,可以解决IISExpress在远程机器上返回503错误的问题。此外,还可以通过检查输出信息和重新启动IIS Express来解决其他可能的问题。

0