【问题标题】:500 Internal Server Error after Cookies has been Set (PHP)设置 Cookie 后出现 500 内部服务器错误 (PHP)
【发布时间】:2013-01-10 17:03:46
【问题描述】:

现在我的网站主页正在加载,但登录时设置了 cookie,但显示

Internal Server Error 服务器遇到内部错误

配置错误,无法完成您的请求。请 联系服务器管理员告知错误的时间 发生的任何事情,以及您可能做过的任何可能导致 错误。

有关此错误的更多信息可能在服务器错误中可用 记录。

我已经尝试过 IE 和 Chrome --> 显示相同的错误。

系统到昨天都运行良好!不知道现在发生了什么!

在登录设置页面中,我正在使用.. setcookie("userid",$userid[1],time()+3600); setcookie("密码",$password,time()+3600);

登录后它会重定向到包含以下代码的下一页...

<? ob_start(); ?>
<?php if (isset($_COOKIE["userid"]) and isset($_COOKIE["password"]))
  {//logged in;
  }
  else
  {
    die("You are not logged in...<meta http-equiv='Refresh' content='0; url=index.php' />");
  }?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>My site</title>

...等等...

【问题讨论】:

  • 您永远不应将用户凭据(用户名和密码)存储在 cookie 中。这是一种非常糟糕的安全做法。请改用 PHP cookie 会话。喜欢$_SESSION['logged_in'] = TRUE;

标签: php html internet-explorer google-chrome


【解决方案1】:

如果之前可以工作突然停止工作:php升级了,新版本中是否禁用了短标签?

将第一行的&lt;? 更改为&lt;?php 看看是否是问题所在。

您还可以查看服务器错误日志以获取有关 500 错误的更多详细信息。

【讨论】:

  • 我正在使用来自服务提供商的远程主机.. 我怎样才能得到错误日志?
  • 我发现不是因为cookies;但其他不依赖 cookie 的页面也面临内部服务错误!任何建议
  • @logan 你需要访问错误日志,否则这一切都只是猜测。您还可以尝试在第一个脚本的开头设置 ini_set('display_errors',1); error_reporting(E_ALL | E_STRICT); 以查看是否显示更多详细信息。
  • 我的主机提供商将 php 处理器设置从 fastcgi 更改为 ISAPI;现在可以使用了!
【解决方案2】:

我的主机提供商将 php 处理器设置从 fastcgi 更改为 ISAPI;

现在可以使用了!

【讨论】:

    猜你喜欢
    • 2019-07-19
    • 1970-01-01
    • 2012-06-11
    • 2015-07-05
    • 1970-01-01
    • 2018-04-26
    • 2011-05-05
    • 1970-01-01
    • 2016-03-26
    相关资源
    最近更新 更多