Lua入口线程中止:运行时错误bad argument #2 to 'tonumber' (number expected, got string)

我正在使用Lapis框架和Torch,**有时**在试图加载页面时,网站会显示内部服务器错误,并且来自Lapis的错误是:

[error] 3726#81246: *19 lua entry thread aborted: runtime error: ...s/MyUser/torch/install/share/lua/5.1/xlua/init.lua:227: bad argument #2 to 'tonumber' (number expected, got string)
stack traceback:
coroutine 0:
    [C]: in function 'require'
    .../MyUser/torch/install/share/lua/5.1/lapis/init.lua:15: in function 'serve'
    content_by_lua(nginx.conf.compiled:22):2: in function <content_by_lua(nginx.conf.compiled:22):1>, client: 127.0.0.1, server: , request: "GET /recommend HTTP/1.1", host: "localhost:9999", referrer: "http://localhost:9999/home"

经过查找,当我注释掉这个部分时,问题就解决了:

local lapis = require("lapis")
local config = require("lapis.config").get()
local inspect = require("inspect")
local json = require('cjson')
local kb_recommend = require("recommender.knowledge")
-- local cb_recommend = require("recommender.content") <---- 注释掉这个

local mysql = require "luasql.mysql"
local env = mysql.mysql()
local conn = env:connect("restoran", "root", "")

这是链接到文件recommender/content.lua:

package.path = package.path .. ";../?.lua"
local predictor = require("Content Based.predictor")
return predictor

这个文件返回了我编写的_torch_code类。我怀疑问题来自于'require'部分,但不知道原因。我已经在Google上寻找解决方案,但没有找到。这是我的当前版本:

Lua 5.1.5
Torch7
Lapis 1.6.0
nginx/1.13.9
openresty/1.13.6.1

有人能帮忙吗?我在Lua的环境中非常新手。

点赞
用户10041320
用户10041320

tonumber 是 Lua 一个函数,它可以用于如下例子:tonumber("10")tonumber(10)

非常抱歉我没能提供更多帮助。

如果您能够给出出现错误的代码行,我很有可能能够定位并修复错误。

2018-07-08 13:39:37