【发布时间】:2019-01-23 16:23:34
【问题描述】:
我正在尝试在 OpenResty 中创建基本的 hello word 页面。如果我使用 content_by_lua,它工作正常,但是当我尝试使用 content_by_lua_file 时,我遇到了这个错误:
2015/01/22 13:52:35 [alert] 2183#0: lua_code_cache is off; this will hurt performance in /Users/lobster/documents/web_server/conf/nginx.conf:10
2015/01/22 13:52:38 [error] 2223#0: *4 failed to load external Lua file "/Users/lobster/documents/web_server/./lua/main.lua": cannot open /Users/lobster/documents/web_server/./lua/main.lua: Permission denied, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "localhost:8080"
但这没有意义,因为我可以轻松更改 /Users/lobster/documents/web_server/lua/main.lua 文件。这是我的配置:
worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
lua_package_path '/lua/main.lua;';
server {
lua_code_cache off;
listen 8080;
location / {
default_type 'text/plain';
content_by_lua_file ./lua/main.lua;
}
}
}
我从 root 启动 nginx,所以 nginx 可以访问我计算机上的任何文件。我做错了什么?
更新: 我使用 content_by_lua 修复了它,里面有 require
【问题讨论】:
-
错误信息不够明确吗?它说它没有打开/读取相关文件的权限。修复文件的权限。请注意,以 root 身份登录时启动 Nginx 与以 root 身份运行 Nginx 不同。
-
Tye 绝对路径?