我在Linux上运行ServiceStack作为守护进程时出现问题。
我刚刚开始在Mono上使用C#创建REST API。我研究了你的Wiki,昨天我尝试在Linux上运行ServiceStack作为守护进程(Ubuntu 13)完全,如维基页面所述:
https://github.com/ServiceStack/ServiceStack/wiki/Run-ServiceStack-as-a-daemon-on-Linux
但我遇到了一个问题,尝试了我在网上找到的所有可能的解决方案,但没有任何帮助..问题:
如果我在Ubuntu系统上访问http://127.0.0.1:8080
,一切都很好,我正在被重定向到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中提到的配置后,我认为这应该可以正常工作。我错了吗?或者你知道如何解决这个问题吗?
另一个问题是,如果我从另一个系统访问我的ubuntu系统上的服务,例如通过http://ubuntu-dev:8080
的Windows,我得到错误请求(无效主机)
如果我访问http://ubuntu-dev/api
,我也会获得404。
我认为Bad Request Thing必须与servicestack有关,因为apache只侦听端口80(我认为应该如此)。你有什么建议吗?
如果有人可以帮助我,那将是非常好的,因为我真的不知道如何处理这些问题。
每天的问候
答案 0 :(得分:1)
这可能是一个问题,只有当它运行在与80不同的端口上时才会发生
设置端口时可能没有正确重定向。
尝试使用fastcgi(fastcgi-mono-server4)在nginx上运行它,你可以在端口80上运行它。