【发布时间】:2018-01-10 17:08:20
【问题描述】:
创建 Nancy 自托管控制台应用程序需要包含 PORT 作为参数的本地地址:
using (var host = new NancyHost(new Uri("http://localhost:1234")))
{
host.Start();
Console.ReadLine();
}
虽然自定义 PORT 是一个有效的用例,但是否可以使用除 ("http://localhost") 之外的其他主机。如果是,是哪些原因以及出于什么原因?
背景:
我正在为服务器创建一个自定义设置文件,我想知道提供设置“端口”是否足够,或者提供一个包含主机的设置“主机”(或“URL”)是否更好作为港口?
编辑
为避免硬编码,HOST 部分可以通过应用程序设置 (App.config) 进行配置,这与服务器管理员使用的自定义设置文件不同。但是,我想让自定义设置文件尽可能简单。推荐人,问题:有什么可想而知的理由应该修改'http://localhost'部分吗?
【问题讨论】:
-
您是否在询问是否可以在代码中硬编码 localhost?如果是这样,即使你相信它永远不会改变,答案也是一个响亮的否定。这只是常见的做法。
-
@tomredfern:请查看更新后的问题。
-
你是问不管你把服务部署到哪个环境,它总是使用localhost吗?
-
服务器将部署(作为 Windows 服务)到 Windows Server 2016。
will it always use localhost?就是那个问题。服务器是否有可能使用 localhost 以外的其他主机? -
所以您的问题实际上应该是“Nancy 服务是否有可能使用 localhost 以外的其他主机名?”,而不是“我应该让主机名可配置”;-)
标签: c# .net server localhost nancy