Jquery Ajax请求在cakePHP项目中返回禁止(403)

编辑2

我仍然需要帮助,因为错误仍然没有解决。 下面我添加了一个链接到.ajaxError()抛出的屏幕截图:

http://sofzh.miximages.com/javascript/RkcgNtG.jpg

另一个想法是服务器设置。 suphp或mpm_itk模块是否有可能导致此错误?

编辑

我找到了一些东西。 我的Ajax-Call应该从输入和textarea更新一些数据。 我测试了更多,看到403只出现在我的textarea的值或我输入的值有多个空格时…所以’那是一个测试’和’那个’最好’工作正常,但’这是一个文本’返回403。

我还想补充说Ajax-Call是用get-method完成的。

原版的

我在cakePHP项目上工作时遇到了问题。 首先,我必须说我是cakePHP的新手,并且我从事的工作最初并非由我开发。

我在我的localhost(带有xampp的Windows 8)上设置了这个项目,一切正常。

在下一步中,我编辑了Bootstrap-Configuration文件,更正了数据库信息并将所有文件上传到我的服务器。

现在一切仍然有效,除了jQuery AjaxCalls。 跟踪此错误的根,我看到服务器返回403状态代码。

现在我搜索了可能的原因。 我发现的第一个方面是将安全级别设置为从高到中。 但由于我的2.x项目不再具有此设置,我需要另一种解决方案。

下一步是检查服务器设置。 但是我的本地版本和发生错误的服务器的phpinfo似乎几乎相同。 只有服务器上的PHP版本5.3和FastCGi的使用是不同的。 但由于cakePHP不需要超过5.2,这不是原因。

所以现在我不知道要搜索什么。 我认为它必须是一个设置,因为它在我的localhost上工作正常,在另一台服务器上工作正常但在新服务器上失败。 我能检查的任何想法? 由于我不是服务器技术的专家,如果你尽可能详细地回答它会很棒。

谢谢,问候

我现在已经改变了我的jQuery Ajax-Call,如下所示

$.ajax({ url: '/metas/saveMetas', data: { "model": model, "f_key": f_key, "pagetitle": pagetitle, "keywords": keywords, "description": description, "niceurl": niceurl }, dataType: 'json', complete: function(){ return false; }, success: function(result) { if(typeof result =='object') { $('#modal-spinner-seo-update').hide('slow'); jQuery.each(result, function(field, message) { $('#seo-'+field).next('div.error-message').html(message).fadeIn('fast'); }); } else { $('#modal-spinner-seo-update').hide('slow', function() { $("#seo-widget-message-success").fadeIn('slow').delay(2000).fadeOut('slow'); }); } return false; } }); 

进入一个简单的JavaScript xmlHttpRequest如下

  xhr = new XMLHttpRequest(); xhr.onreadystatechange=function() { if (xhr.readyState==4 && xhr.status==200) { console.log(xhr.responseText); if(typeof xhr.responseText =='object') { $('#modal-spinner-seo-update').hide('slow'); jQuery.each(result, function(field, message) { $('#seo-'+field).next('div.error-message').html(message).fadeIn('fast'); }); } else { $('#modal-spinner-seo-update').hide('slow', function() { $("#seo-widget-message-success").fadeIn('slow').delay(2000).fadeOut('slow'); }); } return false; } }; xhr.open('GET','/metas/saveMetas?model='+model+'&f_key='+f_key+'&pagetitle='+pagetitle+'&keywords='+keywords+'&description='+description+'&niceurl='+niceurl, true ); xhr.send(); 

现在一切似乎都很好。 但我仍然不明白为什么。 谁能解释我做错了什么?