lua-nginx 必须以 root 用户身份运行。
2015-9-16 14:39:59
收藏:0
阅读:125
评论:2
我有一个简单的 lua-nginx 配置文件,如下所示:
server {
server_name payment.mybackend.fr
payment.mybackend.fr;
set $rails_root /home/deploy/api/MAP;
set $env 'cloud';
location ~ /(paypal|paybox_system) {
content_by_lua_file $rails_root/lib/nginx-redis-payment/$1.lua;
}
}
当我以当前用户而非 sudo 权限运行 nginx 时,lua 脚本从未被调用,因此支付无法验证。
以 sudo 权限运行它时,它能够完美地工作。
如何使 nginx 不使用 root 特权执行我的 lua 脚本?
点赞
用户1122270
只要你的 nginx 本身不需要 sudo 运行,就可以不执行相关脚本……
这很可能与相关的 Lua 脚本有关,而与 nginx 本身关系不大。
我建议按照以下步骤进行故障排除:
确保 nginx 本身可以不需要
sudo运行。你可以使用pkill nginx和/或pkill -KILL nginx,然后使用pgrep nginx确保当前没有 nginx 实例正在运行。然后以非 root 用户执行nginx,确保它能够启动并持续运行。尝试以与运行 nginx 的用户相同的用户身份执行脚本。如果执行失败,请将出现的错误和可能生成的日志以及相关文件和目录的
id和ls -la提供给我们。进一步查看 nginx 和脚本在失败时生成的任何可能的日志。
2015-09-26 01:43:22
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
对不起,我没有在您的回答中发表评论的权限,如果此答案应该放在评论部分而不是答案,请谅解。
我以前也遇到过类似的问题,并想出了一个想法:https://stackoverflow.com/questions/32593747/idea-for-reload-restart-apache-from-php-script-without-running-as-root
这个想法是一样的:出于安全原因,您不希望以root身份运行Nginx,但您确实希望作为root执行某些预定义的命令。使用非root脚本(比如您将一个php脚本放在"/(paypal|paybox_system)"的位置),这样它就可以写入一个监视文件夹,守护进程(以root权限运行)接收到信号后执行一个root命令(例如以sudo运行您的lua脚本)。