吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 584|回复: 2
收起左侧

[求助] nginx配置完upstream 后 登录不上 我需要实现session共享

[复制链接]
wuqingvika 发表于 2023-9-5 16:41
image.png
我尝试了两种办法都失败了 求大佬指路哪里有问题呀
报错:
nginx: [emerg] unknown directive "access_by_lua_block" in /usr/xxf/conf.d/yq.conf:42

nginx: [emerg] "proxy_cache" zone "session" is unknown in /usr/local/nginx/conf/nginx.conf:65

一种是
[Lua] 纯文本查看 复制代码
在Lua脚本中处理会话共享
            access_by_lua_block {
                local shared_data = ngx.shared.session
                local session_id = ngx.var.cookie_session_id

                if session_id then
                    local data = shared_data:get(session_id)
                    if data then
                        ngx.var.session_data = data
                    else
                        -- 如果找不到数据,创建新的会话数据
                        ngx.var.session_data = "New session data"
                        shared_data:set(session_id, ngx.var.session_data)
                    end
                else
                    -- 如果没有会话ID,创建新的会话数据
                    local session_id = ngx.md5(ngx.now())
                    ngx.header["Set-Cookie"] = "session_id=" .. session_id
                    ngx.var.session_data = "New session data"
                    shared_data:set(session_id, ngx.var.session_data)
                end
            }

另一种是

# 启用共享会话数据
proxy_cache session;

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

kurama1982 发表于 2023-9-5 16:59
第一个错误是关于access_by_lua_block指令的问题。access_by_lua_block指令是由OpenResty(集成了Nginx和Lua的扩展)提供的,而不是标准的Nginx指令。如果您的Nginx版本不支持OpenResty或Lua模块,那么这个指令将无法识别。请确保您的Nginx安装中包含了OpenResty或Lua模块,并且已正确配置。

第二个错误是关于proxy_cache指令的问题。这个错误提示表明在您的Nginx配置文件中使用了未知的proxy_cache区域(zone)"session"。要使用proxy_cache指令,您需要先定义一个缓存区域。请在您的Nginx配置文件中添加类似下面的配置:
http {
    ...
    proxy_cache_path /path/to/cache levels=1:2 keys_zone=session:10m;
    ...
}
上述配置中的/path/to/cache是指定缓存文件存储路径的位置,session是缓存区域的名称,10m是分配给缓存区域的内存大小。根据您的需求,您可以根据实际情况进行适当的更改。

请注意,这只是一个示例配置。您可能需要根据您的具体需求进行调整。确保在配置文件的正确位置添加这个配置,并确保配置文件中没有其他与proxy_cache指令相关的错误。

完成这些更改后,请重新启动Nginx以使配置生效。如果仍然遇到问题,请检查Nginx的错误日志文件以获取更多详细的错误信息,并进行排查。
咬字分开念 发表于 2023-9-5 18:09
[Shell] 纯文本查看 复制代码
xcxa.com.cn {
reverse_proxy 127.0.0.1:88
tls my@qq.com
root * /web
    reverse_proxy 127.0.0.1:60006 {
# 这里取header里面的值 发送 X-Real-IP
       header_up Host {upstream_hostport}
        header_up X-Forwarded-Host {host} 
        header_up X-Forwarded-For {http.request.remote}
        header_up X-Forwarded-Port {http.request.port}
        header_up X-Forwarded-Proto {http.request.scheme}
    }
    handle_path /yourvir {
        reverse_proxy 127.0.0.1:60001
    }
}

可以试试caddy2,简单快速,低代码,自动申请ssl证书
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:46

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表