重定向

时间:2016-08-30 13:15:27

标签: php session cakephp nginx

在我正在使用CakePHP 2.8.6的项目中。我正在开发我的本地环境(使用Apache / 2.4.23(Unix)和PHP / 5.6.16的Macbook,在流浪汉虚拟机中的MariaDB),使用git部署到生产服务器。项目设置为使用数据库存储会话。使用时

$this->Flash->danger('Error_msg');
return $this->redirect(array('action' => 'view/'.$id));

存储Cookie和数据库条目,数据库包含Error_msg。但是,在重定向到view / id之后,消息不会显示给用户并保留在数据库中。

当我删除return语句时,将显示Message并清除数据库条目。但这不是理想的方式。

现在有趣的部分: 当我部署到生产服务器时,一切正常。生产服务器使用php-fpm 5.6.24和MariaDB 10.0.26运行nginx 1.6.2。即使在重定向之后,也会显示消息。只是为了说清楚:对于开发,我在生产机器Debug = 0上使用Debug = 2。

我无法弄清楚为什么这不适用于我的本地开发环境。几分钟前我安装了一个流浪虚拟机,包含nginx 1.6.2和php-fpm 5.6.24以及MariaDB 10.0.26,甚至还没有工作。生产服务器是重定向后正确显示消息的唯一环境。我比较了prod-server和vagrant-machine上的配置文件,但是除了主机名等之外,我找不到主要的区别。

任何可以帮忙解决这个问题的人?我无法使用Sessions测试和开发任何内容,而这部分没有按预期工作......

编辑:在虚拟机上我确实将debug设置为0但没有显示消息。即使我在dev env上将debug设置为0也无法正常工作。

编辑2:在AppController中,我有以下配置:

public $helpers = array('Html', 'Form', 'Flash');
public $components = array('RequestHandler', 'Cookie', 'Session', 'Flash');

0 个答案:

没有答案