我用以下内容启动了Inets http:
> inets:start(httpd, [{port, 8060}, {server_name, "myserver"},
> {server_root, "/Users/jonas/code"},
> {document_root, "/Users/jonas/code/mydocs"},
> {bind_address, {192, 168, 2, 5}}]).
{error,inets_not_started}
所以我唯一的错误信息是{error,inets_not_started}
。有什么方法可以获得更多关于出了什么问题的信息吗?
答案 0 :(得分:2)
首先,要解决您的问题,只需启动inets应用程序(错误原因表明它未启动):
inets:start().
其次,一般来说,启动SASL application可以提高Erlang / OTP错误/崩溃的可读性 - 但这不是这种情况。
答案 1 :(得分:2)
您需要先致电inets:start/0
。有关详细信息,请参阅the inets documentation。
答案 2 :(得分:1)
这是一个很好的问题,因为不幸的是inets:start/[0,1,2,3]
函数的重载,并且httpc
documentation并不是很清楚启动inets
会自动启动httpc
服务也是
特别是在打开时,仅跳到HTTP CLIENT SERVICE START/STOP部分即可快速上手,从而丢失了the module description中的音符。
启动Inets应用程序。 在之后动态启动Inets服务
Inets应用程序已启动 从 启动Inets应用程序时,将启动默认配置文件的管理器进程。此API中未明确使用配置文件的功能将访问默认配置文件。 也就是说, 有趣的是,使用不存在的配置文件时,错误消息为
inets:start/[0,1]
使用默认配置文件inets
来启动httpc
应用程序本身和服务default
(仅记录在案)在httpc
中)。inets:start/[2,3]
(应称为 start_service
)启动可以在inets
(即{{1})之上运行的服务之一},ftpc
,tftp
,httpc
)一旦httpd
应用程序已经启动。
inets
start() ->
start(Type) -> ok | {error, Reason}
start(Service, ServiceConfig) -> {ok, Pid} | {error, Reason}
(使用inets:start/[0,1]
)。
关于
的注释
start(Service, ServiceConfig, How) -> {ok, Pid} | {error, Reason}
httpc
module documentation的顶部开始:
httpc
服务将使用名为httpc
的默认配置文件自动开始。default
1> inets:start().
ok
2> httpc:get_options(all, default).
{ok,[{proxy,{undefined,[]}},
{https_proxy,{undefined,[]}},
{pipeline_timeout,0},
{max_pipeline_length,2},
{max_keep_alive_length,5},
{keep_alive_timeout,120000},
{max_sessions,2},
{cookies,disabled},
{verbose,false},
{ipfamily,inet},
{ip,default},
{port,default},
{socket_opts,[]},
{unix_socket,undefined}]}
3>
3> inets:start(httpc, [{profile, lofa}]).
{ok,<0.95.0>}
4>
5> httpc:get_options(all, default).
{ok,[...]}
6> httpc:get_options(all, lofa).
{ok,[...]}
:inets_not_started
答案 3 :(得分:0)
start(Service,ServiceConfig,How) - &gt; {ok,Pid} | {错误,原因}
Dynamically starts an inets service after the inets application has been started.
所以你需要先调用这个函数。
start() - &gt; 开始(类型) - &gt;好的{错误,原因}
类型: Type = permanent |瞬态|临时
Starts the Inets application.