Почему codeIgniter показывает, что запрошенный URL-адрес не найден на этом сервере?

Я хочу спросить. Прежде всего, я расскажу, что я разработал приложение, использующее codeIgniter для моего окна dekstop. И это понятно и бежит полностью.

Но после того, как я переместил этот проект на debian server, он сказал:

The requested URL /index.php/Admin was not found on this server. 

Я хочу спросить, почему я получил такой результат? Несмотря на то, что я запускал тот же проект с тем же кодом. Как я могу это исправить?

Благодаря…

Прежде всего, включите mod_rewrite, затем перезапустите apache2, используя следующие команды:

 sudo a2enmod rewrite sudo service apache2 restart 

затем откройте файл apache conf с помощью команды:

 sudo gedit /etc/apache2/apache2.conf 

uncomment ниже строки, если он прокомментирован

 AccessFileName .htaccess 

затем найдите эти строки в apache2.conf

 <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted 

здесь измените строку AllowOverride None на AllowOverride All и сохраните этот файл.

Теперь ваша проблема решена.

Первое, что вы должны знать о debian – это базовый сервер Linux. Так что это не похоже на серверы Windows (XAMPP и WAMP).

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

Поэтому проверьте свой именованный разговор

Проверьте эти

  1. Класс class Admin extends CI_Controller класса class Admin extends CI_Controller
  2. Имя файла контроллера должно быть admin.php
  3. Проверьте в routes.php . В маршрутах $route['default_controller'] = "admin";

Пример URL-адреса Codelgniter:

 example.com/class/function/id/ 

Поэтому проверьте правильность названия своего класса или нет, и вместо URL-адреса «Капитал А-Ад» введите url-адрес администратора.

 <?php (defined('BASEPATH')) OR exit('No direct script access allowed'); class Admin extends CI_Controller { } 

Примечание: если вы используете имя файла версии codelgniter-3, также должен иметь значение A. Я имею в виду Admin.php