我有一个模块,我正试图变成一个合适的OTP应用程序。目前,模块具有start / 0,其启动genserver,其提供从配置文件读取的配置数据。然后调用inets:start(httpd,config:lookup(httpd_conf))。我知道我需要将这些内容的起点移到.app文件(应用程序列表)中,但我不确定如何将我的配置数据放入inets:start函数(或传入httpd)?
谢谢, --tim
答案 0 :(得分:1)
这是我发现的......
首先,我需要创建inets配置文件:
inets.config:
[{inets, [{services, [{httpd, [{proplist_file,
"8080.conf"}]},
].
然后,创建httpd conf文件:
8080.conf
[
{modules, [
mod_alias,
mod_auth,
mod_esi,
mod_actions,
mod_cgi,
mod_dir,
mod_get,
mod_head,
mod_log,
mod_disk_log
]},
{port,8080},
{server_name,"hello_world"},
{server_root,"log"},
{document_root,"www"},
{erl_script_alias, {"/erl", [hello_world]}},
{error_log, "error.log"},
{security_log, "security.log"},
{transfer_log, "transfer.log"},
{mime_types,[
{"html","text/html"},
{"css","text/css"},
{"js","application/x-javascript"}
]}
]
现在,在启动我的应用程序时,我只是引用inets.conf文件:
$ erl -boot start_sasl -pa ebin -config inets.config
这似乎不确定它是否是“正确”的方式......