PHP会话数据在某些页面上不起作用,正在接收不同的会话ID

时间:2014-06-12 22:39:17

标签: php session

无法理解这一点。

出于某种原因,Cookie /会话无法在我网站的一个页面上运行。

我有一个完美的用户登录系统。但是在我网站的页面上它不起作用。它与其他目录位于同一目录中,我甚至尝试从不起作用的页面中使用相同的代码,但它仍然没有获得任何会话数据。

我检查了Firebug,它显示此页面正在接收不同的会话ID,这是合乎逻辑的原因吗?还有什么方法可以对它进行排序吗?

很抱歉没有代码,但这是我网站上线的最后一部分,我无法解决。

另一方面,我创建的任何新页面似乎都没有工作,并且正在接收不同的会话ID。

这是我的网页的示例:

<?php 
  session_start();
  require 'functions/core-functions.php';
?>
<!doctype html>

<html lang="en">
<head>
<meta charset="utf-8">

<title>Test Page</title>

<?php include 'init.php' ?>

</head>

<body>

  <div id="container">

  <?php include 'template/sidebar.php';?>

  </div>

</body>

</html>

这会提供一个会话ID,但如果我将此代码复制并粘贴到另一个旧文件中,那么它可以正常工作。

1 个答案:

答案 0 :(得分:1)

我在这里遇到的问题是,使用www在域名上设置了SESSIONS。前缀。

然后我引导用户访问包含www的URL。一开始。

为了解决这个问题,我决定只使用no www。在htacces中使用此简单代码段对所有用户进行URL和重定向。

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]