Rails 7.1部署后Unicorn报500错误:Array无=~方法
Rails 7.1生产环境Unicorn部署500错误排查求助
问题概述
- 依据Ralf Ebert的《Ruby on Rails – Deployment Tutorial》指南部署Rails 7.1生产环境应用,已完成Nginx配置(对应域名saxshop.sebastiandetering.com),但访问时出现Unicorn 500错误。
- 错误日志显示:
undefined method '=~' for [...]:Array (NoMethodError),触发点为unicorn-6.1.0版本的http_response.rb文件第43行,初步判断是会话头解析异常导致。 - 本地运行应用无任何异常,已将sqlite gem移至development组,此前解决过asset pipeline中javascript.css找不到的问题,确认该问题与此错误无关。
- 已尝试Stack Overflow上相关解决方案,但均未解决问题,现向Unicorn使用者寻求帮助。
错误日志详情
I, [2024-06-05T02:32:21.616740 #1197755] INFO -- : [734c58b0-4118-4545-9f5d-1f40a86e5041] Started GET "/" for 2603:8000:6000:ccc1:1911:39ec:3317:d4d1 at 2024-06-05 02:32:21 +0000 I, [2024-06-05T02:32:21.617954 #1197755] INFO -- : [734c58b0-4118-4545-9f5d-1f40a86e5041] Processing by SiteController#home as HTML I, [2024-06-05T02:32:21.624858 #1197755] INFO -- : [734c58b0-4118-4545-9f5d-1f40a86e5041] Rendered layout layouts/application.html.erb (Duration: 4.3ms | Allocations: 1581) I, [2024-06-05T02:32:21.625212 #1197755] INFO -- : [734c58b0-4118-4545-9f5d-1f40a86e5041] Completed 200 OK in 7ms (Views: 4.2ms | ActiveRecord: 1.2ms | Allocations: 1919) E, [2024-06-05T02:32:21.626527 #1197755] ERROR -- : app error: undefined method`=~' for ["_saxshop_session=5hMztV6NPXd8pLw61KN9JHz%2FFUwV%2BEOoP%2B62bT6ghI18rMIL1mbUc1dzAofXs1dMT5PnWMNi8EDy9nSMNqr3FM88P2PJgn0EKNdTASj0FyPvZTyqZymyo3ApBdcowBsfEobINQCEKj3iPbmcR97%2BaabxUrPKTBq5rSDHbv9HgxU7qsg1CO%2BL7N7%2FiT1b3JaNIhoZmP%2Bd8Q%2F%2BpVGzMypYpdsoIoB8YCaDPc9ENxVFwTO4fU07RA9ZcXnE7BsdnvAINoSTLVLCcM721ZtluSYmOCoZNoNW3DLz--ORfA6Q3dY%2B05TYTF--9a1sTAkoez2smjWXZiiM4A%3D%3D; path=/; secure; httponly; SameSite=Lax"]:Array (NoMethodError) E, [2024-06-05T02:32:21.626628 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_response.rb:43:in `block in http_response_write' E, [2024-06-05T02:32:21.626654 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_response.rb:34:in `each' E, [2024-06-05T02:32:21.626684 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_response.rb:34:in `http_response_write' E, [2024-06-05T02:32:21.626705 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:645:in `process_client' E, [2024-06-05T02:32:21.626722 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:739:in `worker_loop' E, [2024-06-05T02:32:21.626739 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:547:in `spawn_missing_workers' E, [2024-06-05T02:32:21.626757 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:143:in `start' E, [2024-06-05T02:32:21.626774 #1197755] ERROR -- : /home/saxshop/app/shared/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/bin/unicorn:128:in `<top (required)>' E, [2024-06-05T02:32:21.626791 #1197755] ERROR -- : /home/saxshop/app/releases/5/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `load' E, [2024-06-05T02:32:21.626809 #1197755] ERROR -- : /home/saxshop/app/releases/5/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `<main>' E, [2024-06-05T02:32:21.626830 #1197755] ERROR -- : /usr/local/rvm/gems/ruby-3.2.0/bin/ruby_executable_hooks:22:in `eval' E, [2024-06-05T02:32:21.626851 #1197755] ERROR -- : /usr/local/rvm/gems/ruby-3.2.0/bin/ruby_executable_hooks:22:in `<main>'
补充信息
项目源码地址:https://github.com/TimeTravelerFromNow/saxshop
内容的提问来源于stack exchange,提问作者KleinerWarden
相关产品推荐
相关产品推荐

