我在我的项目中使用 CI,当我在生产服务器上移动它时,在调用 $this->session->set_flashdata 时看到错误“404 page not found”。当我请求任何页面时,此错误会保留,直到我清除 cookie。再次调用“set_flashdata”后,此错误重复出现。
function _set_success($message)
{
$this->session->set_flashdata('is_db_msg', 1);
$this->session->set_flashdata('db_msg', $message);;
}
$result = $this->page_model->edit_page($page_name, $this->_get_data_array());
$result ? $this->_set_success('OK') : $this->_set_error(DB_ERROR);
redirect(BASEURL.'admin/pages');
// 重定向后的服务器 404(在任何页面上)
BASEURL 是常量:DEFINE(' http://mysite.com '); 我也在使用这个.htaccess:
DirectoryIndex index.php
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www [NC]
RewriteRule ^(index\.php/?)?(.*[^/])/?$ http://mysite.com/$2 [L,R=301]
RewriteCond %{HTTP_HOST} ^www [NC]
RewriteRule ^$ http://mysite.com [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(index\.php/?)?(.+)/$ /$2 [L,R=301]
RewriteCond %{ENV:REDIRECT_FINISH} ^$
RewriteRule ^index\.php/(.*)$ $1 [L,R=301]
RewriteRule ^(main/index(/index)?|index(\.php)?)/?$ / [L,R=301]
RewriteRule ^([^/]*)/index/?$ $1 [L,R=301]
RewriteCond %{REQUEST_URI} ^(system|application).*
RewriteRule ^(.*)$ /index.php/$1 [L,E=FINISH:END]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L,E=FINISH:END]
请帮助并为我糟糕的英语感到抱歉。