PHP代码在Windows上工作,但卡在Linux上

时间:2014-07-22 11:12:37

标签: php linux windows apache

我正在使用mysql数据库处理php web应用程序。

我使用Windows作为开发环境,现在当我试图将应用程序移动到生产级别(CentOS 7)时,我遇到了一些问题。

简而言之问题如下:

我的主页是登录页面,表单的操作位于一个名为login-action.php的页面中:

登录-action.php的

[Some Code]
echo 'before user model';
include_once 'user.class.php'
echo 'after user model';
header ('Location: index.php');
[Some Code]

user.class.php

[Some includes]
echo '  before User Class';
class AppUserModel {
...
...
}
echo 'after User Class';

在我的开发环境中,每件事情都运行良好,但在CentOS上我尝试登录但是我被login-action.php卡在了响应中:

before user model  before User Class

可能是什么问题。

到目前为止我尝试过的事情:

  • 将最大执行时间设置为无限值。 (要求响应的时间太长了。)
  • 我不认为问题与mysql有关,因为应用程序在执行任何mysql查询甚至连接到数据库之前都会卡住。
  • 我启用了所有错误(E_ALL),但我没有收到任何错误。
  • 我不能在课堂上写任何东西(作为回声),因为它在语法上不正确。
  • 我不认为DIRECTORY_SEPERATOR可能是问题,因为它正确加载login-action.phpuser.class.php

可能是什么问题,或者我该如何解决?

1 个答案:

答案 0 :(得分:1)

  1. 检查centOS服务器上的错误日志。
  2. 如果您无法访问错误日志,请尝试使用这3行显示错误

    error_reporting(E_ALL);
    ini_set('display_errors', TRUE);
    ini_set('scream.enabled', TRUE);
    
  3. 记住Linux是区分大小写而不是Windows,在90%的情况下,这是主要问题。检查正确的错误将帮助您确定问题