我一直在做一个项目,需要我在codeigniter中对控制器进行ajax调用。本地的网站工作得很好,但上传到我的虚拟主机(Versio)后停止工作。Codeigniter - Ajax请求,找到控制器,但无论如何404?
出于某种原因,它似乎像ajax调用找到控制器,但无论如何给我一个404错误。我认为它实际上发现控制器的原因是因为当我更改url时,AJAX请求会向我显示一个不同的404页面,而不是标准的CodeIgniter 404页面。
我的要求是这样的:
var baseURL = "http://sitename.com/index.php/";
$.ajax({
type: "POST",
url: baseURL+"Encounter/startEncounter",
dataType: "json",
cache: false,
success: function(data) {
alert(data);
}
});
我的配置文件看起来像这样:
$config['base_url'] = 'http://'.$_SERVER['SERVER_NAME'].'/';
$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';
XSS过滤和CSRF关闭。
我的默认控制器是这样的,它加载就好:
$route['default_controller'] = "index";
我的.htaccess文件目前是空的。
非常感谢您的时间,希望有人能帮助解决这个问题。我之前找到的答案的追踪没有结果。
此致, 尼克
Encounter控制器的startEncounter方法是什么样的? – Sam
你设定路线$ route ['Encounter/startEncounter']? – aseferov
在您上传到服务器上之前或之前,您是否已将'baseURL'添加到您的js代码中? – anurupr