nginx - openresty無(wú)法使用require
問(wèn)題描述
不使·access_check.lua的時(shí)候,程序運(yùn)行正常,使用就會(huì)出現(xiàn)錯(cuò)誤。環(huán)境使用了docker的openresty/openresty官方鏡像。
nginx.conf配置如下:
worker_processes 1;error_log logs/error.log;events { worker_connections 1024;}http { lua_package_path 'lua/?.lua;app/?.lua'; lua_code_cache off; server {listen 6699;charset utf-8;#lua_need_request_body on;location / { default_type text/html; content_by_lua_block {ngx.say('hello fatrbaby') }}location ~ ^/api/([-_a-zA-Z0-9/]+) { access_by_lua_file lua/access_check.lua; content_by_lua_file lua/$1.lua;} }}
access_check.lua代碼如下:
local validator = require('lib.validator')local args = ngx.req.get_uri_args()if not validator.is_number(args.a, args.b) then ngx.exit(ngx.HTTP_BAD_REQUEST) returnendngx.print(package.path)
錯(cuò)誤日志如下:
2017/04/26 09:11:34 [error] 216#216: *1 lua entry thread aborted: runtime error: /usr/local/var/learn/lua/access_check.lua:1: module ’lib.validator’ not found: no field package.preload[’lib.validator’] no file ’lua/lib/validator.lua’ no file ’app/lib/validator.lua’ no file ’/usr/local/openresty/site/lualib/lib/validator.so’ no file ’/usr/local/openresty/lualib/lib/validator.so’ no file ’./lib/validator.so’ no file ’/usr/local/lib/lua/5.1/lib/validator.so’ no file ’/usr/local/openresty/luajit/lib/lua/5.1/lib/validator.so’ no file ’/usr/local/lib/lua/5.1/loadall.so’ no file ’/usr/local/openresty/site/lualib/lib.so’ no file ’/usr/local/openresty/lualib/lib.so’ no file ’./lib.so’ no file ’/usr/local/lib/lua/5.1/lib.so’ no file ’/usr/local/openresty/luajit/lib/lua/5.1/lib.so’ no file ’/usr/local/lib/lua/5.1/loadall.so’stack traceback:coroutine 0: [C]: in function ’require’ /usr/local/var/learn/lua/access_check.lua:1: in function </usr/local/var/learn/lua/access_check.lua:1>, client: 172.17.0.1, server: , request: 'GET /api/add?a=1&b=6 HTTP/1.1', host: 'localhost:6699'
項(xiàng)目目錄結(jié)構(gòu)如下:
問(wèn)題解答
回答1:已經(jīng)解決了這個(gè)問(wèn)題
相關(guān)文章:
1. java - public <T> T findOne(T record) 這是什么意思2. css - 關(guān)于ul的布局3. javascript - 前端開(kāi)發(fā) 本地靜態(tài)文件頻繁修改,預(yù)覽時(shí)的緩存怎么解決?4. android - 優(yōu)酷的安卓及蘋果app還在使用flash技術(shù)嗎?5. docker不顯示端口映射呢?6. mysql數(shù)據(jù)庫(kù)每次查詢是一條線程嗎?7. python - linux怎么在每天的凌晨2點(diǎn)執(zhí)行一次這個(gè)log.py文件8. javascript - 我的站點(diǎn)貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?9. 如何分別在Windows下用Winform項(xiàng)模板+C#,在MacOSX下用Cocos Application項(xiàng)目模板+Objective-C實(shí)現(xiàn)一個(gè)制作游戲的空的黑窗口?10. 小程序怎么加外鏈,語(yǔ)句怎么寫!求救新手,開(kāi)文檔沒(méi)發(fā)現(xiàn)
