服务器使用IP地址不可见


1

我曾经很容易在Unix上创建服务器,但是Windows让我很适合。我的目标是在我的本地Windows机器上使用一个非常简单的http服务器,这样无论我在哪里,我都可以访问一些个人信息。

部分安全性是使用http:protocol的非标准端口。(据我所知,它本身并不是很好的安全性。)

我创建了(在C#中)在端口100上任意运行的服务器。

从运行服务器的计算机上的Web浏览器,我转到: http:// localhost:100 / test 或localhost:100 / test,我的网页(3行文本)显示在浏览器中。

我的局域网IP是192.168.1.19

从运行服务器的机器上的同一个Web浏览器,如果我去:http//192.168.1.19:100/ test 或192.168.1.19:100 / test,我在浏览器中显示以下内容:

错误请求 - 无效的主机名

HTTP错误400.请求主机名无效。

我试图确保Windows防火墙对端口100开放,但我不肯定它是正确的。(控制面板设置让我识别服务器的可执行文件。我希望告诉它打开端口100,但是无处可去。)

我将不胜感激任何有关获取Windows以使此端口可用的建议。

请不要告诉我解决此问题的其他方法,例如远程托管或加载现有服务器软件包。我真的很想这样做,原因有些太复杂,无法解释。

我在Windows 10计算机上运行,​​但在Windows XP Pro计算机上也遇到了同样的问题。


您是否确定打开端口100的防火墙规则适用于您的NIC所在的网络类型(家庭,个人或公共)?它不足以创建打开端口的规则,该规则必须应用于与您的NIC对应的网络类型。
2015年

另外,为了确保它是Windows防火墙的问题,您是否完全关闭它并查看页面是否加载?并且假设您在从另一台计算机浏览时发生错误请求错误,而不是托管服务器的错误?如果是这样,请编辑您的帖子以澄清。
红色

所以你创建了构建服务器的代码。您希望我们对您的代码,操作系统,配置和网络进行故障排除吗?你证明你的代码有效吗?你是怎么做到的?从运行服务器的计算机上尝试172.0.0.1:100会发生什么?你能ping服务器吗?当您可以在Apache httpd.apache.org/docs/2.2/bind.html中更改端口时,为什么要编写自己的代码?您是否有一个名为test的文件夹,您编写的服务器可以访问?你怎么知道它有效?
Everett 2015年

1
红色:我特别说我在运行服务器的同一台机器上使用浏览器。我没有尝试完全关闭防火墙以确定它是否是问题。谢谢,我会试试。
Mark T

1
埃弗雷特:我特别需要。我在帖子中说它在localhost上运行成功...这与127.0.0.1相同。至于为什么我没有运行Apache,我在最后一段说过我有理由......为什么你不能接受呢?[我的服务器将执行一项特定的任务,必须在Apache中使用复杂的脚本实现...而且我必须配置Apache以关闭我不想要的所有其添加的功能,因为每个添加的位是安全漏洞的另一种可能性。这只是我的众多原因之一。]请仔细阅读。
马克T
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.