2011-05-27 136 views
6

以下代碼從我的控制器運行,並在一臺服務器上導致502錯誤錯誤網關。我一直無法在我的服務器上重現。什麼是502壞門戶的一些原因?錯誤502使用CodeIgnitor時出現錯誤的網關

function index() 
{ 
    $this->_reload(); 
} 

function _reload($data=array()) 
{ 
    $person_info = $this->Employee->get_logged_in_employee_info(); 
    $data['cart']=$this->sale_lib->get_cart(); 
    $data['modes']=array('sale'=>$this->lang->line('sales_sale'),'return'=>$this->lang->line('sales_return')); 
    $data['mode']=$this->sale_lib->get_mode(); 
    $data['items_in_cart'] = $this->sale_lib->get_items_in_cart(); 
    $data['subtotal']=$this->sale_lib->get_subtotal(); 
    $data['taxes']=$this->sale_lib->get_taxes(); 
    $data['total']=$this->sale_lib->get_total(); 
    $data['items_module_allowed'] = $this->Employee->has_permission('items', $person_info->person_id); 
    $data['comment'] = $this->sale_lib->get_comment(); 
    $data['email_receipt'] = $this->sale_lib->get_email_receipt(); 
    $data['payments_total']=$this->sale_lib->get_payments_total(); 
    $data['amount_due']=$this->sale_lib->get_amount_due(); 
    $data['payments']=$this->sale_lib->get_payments(); 
    $data['payment_options']=array(
     $this->lang->line('sales_cash') => $this->lang->line('sales_cash'), 
     $this->lang->line('sales_check') => $this->lang->line('sales_check'), 
     $this->lang->line('sales_giftcard') => $this->lang->line('sales_giftcard'), 
     $this->lang->line('sales_debit') => $this->lang->line('sales_debit'), 
     $this->lang->line('sales_credit') => $this->lang->line('sales_credit') 
    ); 

    $customer_id=$this->sale_lib->get_customer(); 
    if($customer_id!=-1) 
    { 
     $info=$this->Customer->get_info($customer_id); 
     $data['customer']=$info->first_name.' '.$info->last_name; 
     $data['customer_email']=$info->email; 
    } 
    $data['payments_cover_total'] = $this->_payments_cover_total(); 
    $this->load->view("sales/register",$data); 
} 
+0

什麼版本的CI? – 2011-05-28 00:14:33

+0

1.7.3在NGNIX服務器上 – 2011-05-28 01:08:01

+0

如果我可以發生任何錯誤,例如在會話發生之前發送輸出,它實際上會使頁面工作(帶有錯誤信息)。一些奇怪的事情正在發生。 – 2011-05-28 01:14:01

回答

4

這似乎是setCookie方法被調用過多是導致502錯誤。我不確定NGNIX是否是一個限制,但是這解決了問題。

+0

我也是我的問題,我沒有注意到我的cookie保存行是在一個循環中,謝謝! – NaturalBornCamper 2014-05-13 23:50:29

2

這是一個NGINX/CI的問題,如果您不能更改設置,然後更改會話您使用的數據庫爲我工作

$config['sess_use_database'] = TRUE; 
+0

我正在使用數據庫支持的會話。我不認爲這應該解決它... – 2014-11-10 18:24:34

+0

謝謝邁克爾。這解決了它。 – Sasho 2016-10-28 11:11:24