2

我在 Linux 上将 ServiceStack 作为守护程序运行时遇到问题。

我刚开始在 Mono 上使用 C# 创建 REST API。我研究了您的 Wiki,昨天我尝试在 Linux(Ubuntu 13)上将 ServiceStack 作为守护程序运行,完全按照 wiki 页面上的描述:

https://github.com/ServiceStack/ServiceStack/wiki/Run-ServiceStack-as-a-daemon-on-Linux

但是我遇到了一个问题,尝试了我在网上找到的所有可能的解决方案,但没有任何帮助..问题:

如果我http://127.0.0.1:8080在 Ubuntu 系统上访问一切都很好,我会被重定向到http://127.0.0.1:8080/metadata并获取服务元数据。

如果我访问http://127.0.0.1:80,我会得到静态内容。也很好。

但是,如果我访问http://127.0.0.1/api,我将被重定向到http://127.0.0.1/metadata并获得 404。这完全可以理解,因为端口 80 上没有这样的东西。
你知道我在 apache 中不是那么好,但是在阅读了 wiki 中提到的配置后,我认为这应该正常工作。我错了吗?或者你知道我该如何解决这个问题吗?

另一个问题是,如果我从另一个系统(例如 Windows)访问我的 ubuntu 系统上的服务http://ubuntu-dev:8080,我会收到Bad Request (invalid host)
如果我访问http://ubuntu-dev/api.

我认为 Bad Request Thing 一定与 servicestack 有关,因为 apache 只侦听端口 80(我应该这么认为)。您对此有什么建议吗?

如果有人可以帮助我,那就太好了,因为我真的不知道如何处理这些问题。

问候,每天

4

1 回答 1

1

这可能是仅当它在与 80 不同的端口上运行时才会出现的问题。
可能在设置端口时它没有正确重定向。
尝试使用 fastcgi (fastcgi-mono-server4) 在 nginx 上运行它,你可以在端口 80 上运行它。

于 2013-05-11T11:19:34.820 回答