-5

我在我的 localnet 中为一个网站使用 codeigniter。我在这样的视图中调用方法:

$.ajax({
    url: "<?php  
        if(ENABLEACTIVEDIRECTORYMODE == true)                                      
            echo site_url('login/loginController/loginControlWithActiveDirectory');
        else
            echo site_url('login/loginController/loginControl');
    ?>",
    type: 'POST',
    data: data,
    success: function(data1){   
        $("body").innerHTML("<h1>BOBAA</h1>");
        // To get rid of whitespaces etc.
        var reply = data1.replace(/\s+/, "");
        if( reply.toString() == 'OK' ){ 
           window.location.href = <?php echo json_encode(site_url()); ?> + '/operation/operationController';                           
        }else if( reply.toString() == 'FAIL' ){                           
            alert("Kullanıcı adı ve/veya parola yanlış girilmiştir.Lütfen tekrar deneyiniz.");
        }  
    }
});

据我从萤火虫检查,它给出了内部 500 错误。我正在单击一个按钮来发出这个 ajax 请求。然而,即使我收到内部 500 错误。没有什么变化。佩奇静止不动。apache 日志文件中没有记录任何错误。即使 php.ini 中的每个设置都是正确的,php 也根本不会记录。(我对此很确定,因为我之前有过一天的时间来解决这个问题)。

在我的 index.php 中,设置了以下几行。

error_reporting(E_ALL);
ini_set('display_errors', 1);

所以我很困惑,我怀疑是否因为codeigniter而没有记录任何内容。我什至不确定内部 500 是否来自 php 文件。但是单击按钮并没有做任何其他事情。

总而言之,我想看到一些错误。但为什么我不能,这就是问题所在。

4

2 回答 2

1

500 错误是服务器端错误,可能是您的 .htaccess 文件有问题。查看您的服务器日志,看看他们在说什么。还直接加载页面并查看是否输出任何对您有用的信息,但 codeigniter 永远不会被记录,因为在调用 PHP 之前发生错误或编译器在某处对您的语法感到不满。

于 2013-05-24T14:43:53.467 回答
0

http://ellislab.com/codeigniter/user-guide/general/errors.html

另外,您是否正在检查正确的日志文件是否有错误?您是否为 php.ini 中的错误设置了一个文件夹?您确定在 apache 配置中设置的错误没有不同的文件吗?

https://stackoverflow.com/a/3277783/183254
https://stackoverflow.com/a/13729932/183254
https://stackoverflow.com/a/9429681/183254

@Michael Sole在 ; 方面可能走在正确的轨道上.htaccess

如果你在 *nix 上,你可以grep通过日志文件夹寻找 apache 记录在哪里的迹象

grep -Rn "loginController" /var/log

http://www.gnu.org/software/grep/manual/grep.html

于 2013-05-24T14:53:19.330 回答