Странная проблема с кодировщиком

Когда я загружаю свое полностью работающее приложение codeigniter на работающий сервер, оно не находит никаких действий контроллера и контроллера.

Например:

мой локальный URL:

localhost/myapp/index.php/testcontroller/testaction

Да, это работает нормально, но когда я загружаю то же самое, и URL-адрес становится:

livesite.com/index.php/testcontroller/testaction

Это не работает. Показывает ошибку, которая не может оштрафовать контроллер. Мне интересно, почему это происходит так, пока он работает на локальном сервере. Пожалуйста, помогите

код контроллера:

<?php
class Ajaxification extends CI_Controller{
    public function __construct() {
        parent::__construct();
        $this->load->database();$this->load->model('MAjaxification');
    }
    public function Index(){

    }
    public function getUserDetail(){
        $this->load->model('MAjaxification');
        $uid = $_REQUEST['uid'];
        echo $this->MAjaxification->getUserdetail($uid);
       // echo "A test response";
    }
    public function getRandomUser(){
       $top = $_REQUEST['top'];
       $left = $_REQUEST['lef'];
      // $this->load->model('MAjaxification');
     //  print_r($this->MAjaxification->getRandomDonoers());*/
        $this->db->select("users.sno,users.full_name,users.userid,users.email,users.pic");
        $this->db->from('users');
        $this->db->join('donors','users.userid=donors.userid');
        $this->db->order_by('rand()');
        $this->db->limit(51);
        $res= $this->db->get();

        foreach ($res->result() as $row)
        {
          ?> <div style="border:0px solid black; width: 31px; height: 29px; float: left;">
        <a onclick="getUserinfoDetail('<?=$row->userid?>')" href="javascript:void(0)"><img width="40" height="40" src="../profile_pix/<?=$row->pic; ?>" /></a>
    </div><?php
        }

    }

    private function countUsers(){
        $this->db->select("users.sno,users.pic");
        $this->db->from('users');
        $this->db->join('donors','users.userid=donors.userid');
        $res = $this->db->get();
        return $res->num_rows();
    }
    function getRandUser($f=1,$t){
       $index = rand($f, $t);
       return $index;
    }
    public function testme(){
        echo "This is a test";
    }
}
?>

person Shahid Karimi    schedule 01.10.2011    source источник
comment
Можете ли вы дать нам ссылку на сайт? Возможно, это неправильно настроенная установка или вы уверены, что загрузили все файлы?   -  person Raimonds    schedule 01.10.2011
comment
dustyfeet.designers99.com/index.php/ajaxification/testme Вы можете увидеть что dustyfeet.designers99.com работает, мой base_url: $config['base_url'] = 'dustyfeet.designers99.com';   -  person Shahid Karimi    schedule 01.10.2011
comment
Другие контроллеры работают, вы уверены, что есть этот контроллер? Пожалуйста, вставьте код этого контроллера, пожалуйста?   -  person Raimonds    schedule 01.10.2011
comment
Да, он работает на моем локальном сервере   -  person Shahid Karimi    schedule 01.10.2011
comment
Весь код контроллера в этом комментарии невозможен   -  person Shahid Karimi    schedule 01.10.2011
comment
Трудно сказать, что не так, если я не вижу кода.   -  person Raimonds    schedule 01.10.2011
comment
См. код контроллера в сообщении. я отредактировал   -  person Shahid Karimi    schedule 01.10.2011
comment
Да проверил с делом, все та же ошибка   -  person Shahid Karimi    schedule 01.10.2011
comment
Имя файла этого приложения/контроллеров/ajaxification.php   -  person Raimonds    schedule 01.10.2011
comment
$this->load->model('MAjaxification'); не будет ошибкой, но почему вы загружаете это в конструктор и в функцию?   -  person Raimonds    schedule 01.10.2011
comment
ссылка Это работает, так что что-то не так с регистром   -  person Raimonds    schedule 01.10.2011


Ответы (3)


Я никогда не работал с Codeigniter, но если он похож на Kohana, вам нужно настроить base_url. [EDIT] Проверьте этот пост на форуме CodeIgniter: https://github.com/EllisLab/CodeIgniter/wiki/Automatic-configbase-url

person Tamás Pap    schedule 01.10.2011

Я думаю, что эта проблема может быть связана с некоторыми конфигами в папке конфигурации приложения route.php:

  • $route['default_controller'] вы должны установить его на контроллер по умолчанию

    конфиг.php:

  • $config['base_url'] должен быть '', если вы использовали правила htaccess для удаления index.php в URL-адресе, а также файл .htaccess в каталоге приложения может вызывать эту проблему.

Также имя файла контроллера должно совпадать с именем класса, расширяющего CI_Controller.

person Mina Kolta    schedule 01.10.2011

В config.php добавьте base_url следующим образом; это автоматически получит URL:

$base = http://.$_SERVER['HTTP_HOST']; $base .= str_replace(basename($_SERVER['SCRIPT_NAME']), $_SERVER['SCRIPT_NAME']);

$config['base_url'] = $база;

person Salman Mir    schedule 28.01.2021
comment
вау.... это было задано 9 лет назад, когда я был ребенком. - person Shahid Karimi; 29.01.2021
comment
@Shahid Karimi Некоторые посты стареют, как вино. ;-) - person einUsername; 29.01.2021