2015-10-16 62 views
1

我想用ssl嵌入雅思,但它顯示錯誤消息,誰能告訴我如何設置SSL屬性?如何使用SSL嵌入Yaws?

下面是我的代碼

Id = "my_server", 
GconfList = [{logdir, "/Users/james/Documents/workspaces/erlang/embed_yaws/log"}, 
      {ebin_dir, ["/Users/james/Documents/workspaces/erlang/embed_yaws/ebin"]}, 
      {id, Id}], 
Docroot = "/Users/james/Documents/workspaces/erlang/embed_yaws/www", 
SconfList = [ 
     {docroot, Docroot}, 
     {port, 4444}, 
     {listen, {0,0,0,0}}, 
     {ssl,[{keyfile, "/Users/james/Develop/yaws-2.0.2/etc/yaws/yaws-key.pem"}, 
      {certfile, "/Users/james/Develop/yaws-2.0.2/etc/yaws/yaws-cert.pem"}, 
      {depth,0},{dhfile,"/Users/james/Develop/yaws-2.0.2/etc/yaws/dhparams.pem"}]}, 
     {appmods, [{"/rest", myappmod1, []},{"/ws", myws, []}]} 
     ], 
yaws:start_embedded(Docroot, SconfList, GconfList, Id) 

的部分錯誤消息是低於

=ERROR REPORT==== 16-Oct-2015::17:10:17 === 
FATAL: {noproc, 
     {gen_server,call, 
      ...... 

=ERROR REPORT==== 16-Oct-2015::17:10:17 === 
** Generic server yaws_server terminating 
** Last message in was {setconf, 
         ......... 
** When Server state == {state,undefined,[],0,true} 
** Reason for termination == 
** {badbind,[{yaws_server,start_group,2, 
         [{file,"src/yaws_server.erl"},{line,271}]}, 
     {lists,filtermap,2,[{file,"lists.erl"},{line,1315}]}, 
     {yaws_server,init2,5,[{file,"src/yaws_server.erl"},{line,248}]}, 
     {yaws_server,handle_call,3, 
         [{file,"src/yaws_server.erl"},{line,314}]}, 
     {gen_server,try_handle_call,4, 
        [{file,"gen_server.erl"},{line,607}]}, 
     {gen_server,handle_msg,5,[{file,"gen_server.erl"},{line,639}]}, 
     {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]} 
+0

如果您要提供更多的錯誤消息的致命部分,而不是截斷它,將會有所幫助。 –

+0

謝謝,我會記住。 – chengweichao

回答

1

ssl應用程序沒有運行。調用yaws:start_embedded/4之前,開始ssl這樣的:

application:ensure_all_started(ssl), 
yaws:start_embedded(Docroot, SconfList, GconfList, Id) 

如果您使用二郎的舊版本不提供application:ensure_all_started/1,這是任何版本比舊的R16B02,你就可以開始ssl這樣,而不是:

[application:start(App) || App <- [crypto, public_key, ssl]], 
+0

我添加應用程序後:ensure_all_started(ssl),它的工作原理並沒有任何錯誤消息。非常感謝你 – chengweichao