【问题标题】:PHP setting sessions cause errorPHP设置会话导致错误
【发布时间】:2016-07-05 06:37:37
【问题描述】:

我将我的项目复制到我的桌面。但是当我在桌面上运行项目时,它不会加载login.php

session_start();
  if (isset($_SESSION['username'])) {
    header('Location: index.php');
  }

我的登录页面中有上述代码,以便在用户已经登录时将用户重定向到索引页面。这导致我出错。 删除上面这段代码后login.php加载成功。

我在笔记本电脑上使用 2013 年编译的 xampp 版本,在台式机上使用 2015 年编译的版本。这是导致错误吗?以及它的解决方案是什么。

【问题讨论】:

  • 在设置 header 之前你会产生任何输出吗?
  • 你真的应该总是header('Location之后使用die(),以确保PHP按预期终止。
  • 页面根本没有加载。它显示现在无法访问此网页
  • 能否编辑您的问题并添加完整的错误消息?
  • 当您的工作代码在您更改环境时停止工作时,它的运行通常是因为新环境使用与旧环境不同的配置设置,并且代码依赖于特定配置设置。

标签: php session xampp


【解决方案1】:

您收到此错误是因为未设置会话变量首先尝试打印类似的内容,并且您应该在标头之后使用 exit()。它应始终与标头一起使用以停止进一步处理。

session_start();
print_r($_SESSION['username']); // just to check session exist or not

如果它不能解决您的问题,请在此处提供您的所有代码。

【讨论】:

    【解决方案2】:

    我解决了这个问题。我将我的 appache 端口号从 80 更改为 81 。我想那是错误。 我对php.inc 文件做了一点改动

    session.use_only_cookies=0 
    

    已改为

    session.use_only_cookies=1
    

    它现在可以工作了

    参考 What may cause an ERR_CONNECTION_RESET error, on xampp while using session

    【讨论】:

      猜你喜欢
      • 2015-12-16
      • 2013-02-14
      • 1970-01-01
      • 1970-01-01
      • 2011-06-05
      • 2017-07-06
      • 2023-03-05
      • 1970-01-01
      • 2019-08-18
      相关资源
      最近更新 更多