Кодовый объект не найден 404 EasyPHP

Я столкнулся с проблемой со ссылками на страницы с помощью codeigniter, при переходе с моего домашнего экрана на другой экран под названием Live я получаю сообщение об ошибке ниже:

Объект не найден!

Запрашиваемый URL не найден на этом сервере. Ссылка на ссылающейся странице кажется неправильной или устаревшей. Пожалуйста, сообщите автору этой страницы об ошибке.

Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру.

Ошибка 404

127.0.0.1 Apache / 2.4.7 (Win32) PHP / 5.4.24

Ссылка на домашний экран: http://127.0.0.1/projects/ /index.php/home

Ссылка на экран, к которой я пытаюсь добраться: http://127.0.0.1/projects/ companyname / home / v_Live

Контроллер home.php (нижняя часть):

class Home extends CI_Controller

{

public function __construct()

{

parent::__construct();

$this->load->helper('url');
$this->load->model('m_login');

}

public function index()

{

if($this->session->userdata('isLogin') == FALSE)

{

redirect('login/login_form');

}else

{

$this->load->model('m_login');
$user = $this->session->userdata('username');
$data['level'] = $this->session->userdata('level');
$data['user'] = $this->m_login->userData($user);
$this->load->view('home', $data);

}

--> function index () 

{ 


 function home (){
    $this->load->view("home");
    $this->load->view("v_Live");   
}

 function Live (){
    $this->load->view("home");
    $this->load->view("v_Live");    <----  
}    

}

}

}
?>

домашний вид:

<nav>
    <ul>
        <li><a href="home.php">Home</a></li>
        <li>
            <a href="Cloud_Clients.html">Cloud Clients<span class="caret"></span></a>
            <div>
                <ul>
                    <li><a href="<?php echo base_url(); ?>home/v_Live">Live</a></li>
                    <li><a href="PreProduction.html">Pre-Production</a></li>
                    <li><a href="Clients.html">Client Versions</a></li>
                </ul>
            </div>
        </li>
        <li><a href="about.html">About</a></li>
        <li><a href="help.html">Help</a></li>
    </ul>
</nav>

v_Live вид экрана:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Live</title>
</head>

<body>

<nav>
    <ul>
        <li><a href="home.php">Home</a></li>
        <li>
            <a href="Cloud_Clients.html">Cloud Clients<span class="caret"></span></a>
            <div>
                <ul>
                    <li><a href="<?php echo base_url(); ?>>home/v_Live">Live</a></li>
                    <li><a href="PreProduction.html">Pre-Production</a></li>
                    <li><a href="Clients.html">Client Versions</a></li>
                </ul>
            </div>
        </li>
        <li><a href="about.html">About</a></li>
        <li><a href="help.html">Help</a></li>
    </ul>
</nav>    

<table>
    <tr>
        <th>ID</th>
        <th>Client Name</th>
        <th>App Server</th>
        <th>Instance Name</th>
    </tr>
    <?php
        foreach($records as $row):
    ?>
    <tr>
        <td><?=$row->id?></td>
        <td><?=$row->Client Name?></td>
        <td><?=$row->App Server?></td>
        <td><?=$row->Instance Name?></td>
    </tr>
    <?php
        endforeach;
    ?>
    </table>
</body>

</html>

файл конфигурации:

$config['base_url'] = 'http://127.0.0.1/projects/**companyname**/';

/*
|--------------------------------------------------------------------------
| Index File
|--------------------------------------------------------------------------
|
| Typically this will be your index.php file, unless you've renamed it to
| something else. If you are using mod_rewrite to remove the page set this
| variable so that it is blank.
|
*/
$config['index_page'] = 'index.php';

надеюсь, этой информации достаточно для помощи.

Спасибо

1 ответ

Решение

Если версия вашего codeigniter 3, то имя файла должно начинаться с заглавной буквы.

Далее, вы добавили .htaccess файл?? если нет доступа к URL с помощью index.php. или используйте следующий код для удаления index.php из URL.

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/system.*
RewriteRule ^(.*)$ index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?/$1 [L]

добавить этот файл в корень с именем .htaccessЭто поможет вам в удалении index.php в URL

И удалить index.php в $config и сделать $config['index_page'] = "";

А также удалить base_url(), Codeigniter достаточно смелый, чтобы идентифицировать его.

Другие вопросы по тегам