$session->get在站点迁移后为空


$session->get is empty after site migration

我正在将一个现有的网站迁移到AWS。但是有一件事在当前的网站上工作得很好,但根本不会在新的网站上工作,无论我怎么尝试。我在Joomla中有一个php脚本:

  $session = JFactory::getSession();
  $session->set('user_name', '$user_name');

和另一个脚本:

$session = JFactory::getSession();
$name = $session->get('user_name' , '' ); 

$name是空的,我不知道为什么。在我离开的工作站点上,代码可以工作。所以我猜一定有一些Joomla参数设置在某个地方来激活它,但我不知道它在哪里。

Joomla中的会话问题非常复杂。有许多问题可能导致这个问题:

  • configuration.php文件中的tmp/log路径错误(您是否在新网站上更新了这些路径)
  • 新服务器上的数据库问题
  • .htaccess行与新服务器不兼容。尝试禁用.htaccess文件,看看是否解决了问题。我们刚刚遇到了一个由.htaccess引起的会话问题。如果你感兴趣,请阅读这篇文章)。