I operated as follows, this issue perplexed me two monthes, and Stefan Parvu said that " is not correctly build with against OpenSSL libraries."
#apt-get install openssl libssl-dev
libssl-dev is already the newest version.
openssl is already the newest version.
#rm -rf /usr/local/openresty/ ----->((be sure use the latest openresty)
#killall nginx
# ps aux | grep nginx | grep -v "grep" -----> (be sure there is no nginx running)
#cd ngx_openresty-1.7.4.1
#./configure --with-luajit
#make && make install
#cd /opt/testEmail
#/usr/local/openresty/nginx/sbin/nginx -V
nginx version: openresty/1.7.4.1
built by gcc 4.8.1 (Ubuntu 4.8.1-2ubuntu1~12.04)
TLS SNI support enabled
configure arguments: --prefix=/usr/local/openresty/nginx --with-cc-opt='-I/opt/network/ngx_openresty-1.7.4.1/build/luajit-root/usr/local/openresty/luajit/include/luajit-2.1 -O2' --add-module=../ngx_devel_kit-0.2.19 --add-module=../echo-nginx-module-0.56 --add-module=../xss-nginx-module-0.04 --add-module=../ngx_coolkit-0.2rc1 --add-module=../set-misc-nginx-module-0.26 --add-module=../form-input-nginx-module-0.10 --add-module=../encrypted-session-nginx-module-0.03 --add-module=../srcache-nginx-module-0.28 --add-module=../ngx_lua-0.9.12 --add-module=../ngx_lua_upstream-0.02 --add-module=../headers-more-nginx-module-0.25 --add-module=../array-var-nginx-module-0.03 --add-module=../memc-nginx-module-0.15 --add-module=../redis2-nginx-module-0.11 --add-module=../redis-nginx-module-0.3.7 --add-module=../rds-json-nginx-module-0.13 --add-module=../rds-csv-nginx-module-0.05 --with-ld-opt='-Wl,-rpath,/usr/local/openresty/luajit/lib -L/opt/network/ngx_openresty-1.7.4.1/build/luajit-root/usr/local/openresty/luajit/lib' --with-http_ssl_module
#/usr/local/openresty/nginx/sbin/nginx -p `pwd`/ -c conf/nginx-site &
""" my send email code
local ltn12 = require("resty.smtp.ltn12")
local mime = require("resty.smtp.mime")
local smtp = require("resty.smtp")
local socket = require("socket")
function sendmail()
from= "<xxxxx@xxxx.com>"
rcpt= {
"<" .. "yyyyyyyyy@qq.com".. ">"
}
mesgt = {
headers= {
subject = mime.ew("Activate IntoRobot Account", nil, {}),
["content-transfer-encoding"] = "quoted-printable",
["content-type"] = "text/plain; charset='utf-8'",
},
body= mime.qp("hello, world!"),
}
ngx.log(ngx.DEBUG, 'send email starting .....................')
r, e = smtp.send {
from= from,
rcpt= rcpt,
source= smtp.message(mesgt),
server= "smtp.exmail.qq.com",
user= "xxxxx@xxxx.com",
password= "xxxxx",
--port = 465,
create= socket.tcp,
ssl= { enable= true, verify_cert= false },
}
if not r then
ngx.log(ngx.DEBUG, "send fail error : " .. e)
ngx.say("error")
else
ngx.log(ngx.DEBUG, "send ok")
ngx.say("OK")
end
end
sendmail()
"""
# curl http://localhost:8899/testEmail
error
tail -f logs/email.log
2014/10/20 10:16:57 [debug] 35355#0: *2 [lua] test_email.lua:21: sendmail(): send email starting .....................
2014/10/20 10:16:57 [debug] 35355#0: *2 [lua] test_email.lua:38: sendmail(): send fail error : socket does not have ssl support
2014/10/20 10:16:57 [info] 35355#0: *2 client 127.0.0.1 closed keepalive connection