【问题标题】:Using session->set_flashdata causes 502 Bad gateway error使用 session->set_flashdata 导致 502 Bad gateway 错误
【发布时间】:2013-04-25 06:44:16
【问题描述】:

我在使用时收到 502 bad gateway 错误

$this->session->set_flashdata('message', 'Profile updated.');

我在 nginx 上使用 CodeIgniter。该代码在 localloast(WAMP) 上运行良好。如果我注释掉这些行,应用程序运行良好。

任何帮助将不胜感激。

【问题讨论】:

  • 确保您的会话库已加载
  • 会话库在自动加载配置文件中列出,所以它是自动加载的。
  • 服务器错误日志上有什么?这有帮助吗? developernote.com/2012/09/…

标签: php codeigniter session internal-server-error


【解决方案1】:

在 application/config/config.php 中将“use_database”设置为 TRUE

【讨论】:

    【解决方案2】:

    我知道出了什么问题。首先,有更多服务器知识的同事向我解释说,我的设置可能是 nginx 接收所有请求,然后直接提供静态文件。对于非静态请求,它将工作传递给 apache,并充当中介。因此,当 apache 尝试向 nginx 发送数据(或 nginx 尝试向 apache 发送信息)时,可能出现问题。

    由于我以前从未使用过 nginx,因此我也没有想到检查 nginx 日志文件。还有一个我可以使用的错误:

    [error] 27453#0: *9223 上游从上游读取响应头时发送的头太大,客户端:

    我最终应用了另一个堆栈溢出解决方案的第一位:

    将此添加到您的 nginx.conf 文件中,该文件通常位于
    代码:
    /etc/nginx/nginx.conf:

    proxy_buffer_size 128k;
    proxy_buffers 4 256k;
    proxy_busy_buffers_size 256k;

    顺便说一下,它应该被添加到文件的 http 部分。这是解决方案中缺少的东西。

    参考:
    https://forum.codeigniter.com/archive/index.php?thread-59675.html

    【讨论】:

      【解决方案3】:

      来自@sasho 的回答

      $config['sess_use_database'] = TRUE;

      通过更改为数据库,您可以将会话数据移动到数据库的表中,以避免与权限相关的问题。尝试并在此处回复。

      https://www.codeigniter.com/user_guide/libraries/sessions.html
      

      您可以从官方文档中查看数据库驱动部分以避免此类错误。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-02-10
        • 2016-06-15
        • 2019-03-07
        • 2018-04-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多