Папка проекта Code Igniter

У меня есть папка проекта воспламенителя кода. Все нормально работает. Но когда я поместил папку проекта в другую папку в качестве подпапки, я получил страницу 404, не найденную для URL-адресов контроллера, которые я вызвал.

Например, URL-адрес CI - http: // локальный / библиотека. Затем я помещаю его в другую папку, например: http: // localhost / школа / библиотека

Как мне решить эту проблему? Я знаю, что это проблема с каталогом. Спасибо.

Файл .htaccess:

    RewriteEngine on
    RewriteCond $1 !^(index\.php|resources|robots\.txt)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L,QSA]

Структура папки

    school/
          students/
          teachers/
          library/
                 application/
                 system/
                 assets/
                 index.php
                 .htaccess

Папка библиотеки использует фрейм воспламенителя кода, но школьная папка, которая является основной папкой, не использует фреймворк.

Разместите свой файл .htaccess в вопросе

Spoody 17.03.2018 01:05

RewriteEngine на RewriteCond $ 1! ^ (Index \ .php | resources | robots \ .txt) RewriteCond% {REQUEST_FILENAME}! -F RewriteCond% {REQUEST_FILENAME}! -D RewriteRule ^ (. *) $ Index.php / $ 1 [L, QSA]

Jayden 17.03.2018 01:32

Есть ли в папке школа файл .htaccess? Кроме того, вы меняли конфигурацию index_page?

Spoody 17.03.2018 22:15

В папке школы нет .htaccess. Я не понимаю вторую часть вопроса.

Jayden 17.03.2018 22:19

Я имею в виду, что вам нужно установить index_page на пустое значение в приложение / config / config.php. Это действительно странно, поскольку вам не нужно менять index_page, чтобы он работал. Есть ли что-нибудь еще в вашем файле .htaccess, кроме содержимого, которое я дал вам в ответе? включен ли mod_rewrite на вашем сервере? Можете ли вы сказать мне путь, к которому вы пытаетесь получить доступ, который дает вам ошибку 404?

Spoody 17.03.2018 22:28

Внутри .htaccess нет ничего, кроме того, что вы упомянули. Я пытаюсь получить доступ к localhost / school / library / home / login. Но когда я получаю к нему доступ, как этот localhost / library / home / login. Работает нормально.

Jayden 17.03.2018 22:38

Позвольте нам продолжить обсуждение в чате.

Spoody 17.03.2018 22:52
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
7
54
2

Ответы 2

создайте файл с именем .htaccess и поместите этот код в

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

Внутри школьной папки или папки библиотеки? Потому что у меня уже есть файл .htaccess в папке библиотеки, которая является папкой CI. В папке School не используется структура CI.

Jayden 17.03.2018 01:31

в первый раз проверьте, есть ли он у вас в основной папке вашего проекта

Terchila Marian 17.03.2018 01:32

В основной папке не используется структура CI и, следовательно, нет файла .htaccess, но в библиотеке подпапок есть папка .htaccess.

Jayden 17.03.2018 01:35

не могли бы вы рассказать мне точную структуру вашего проекта?

Terchila Marian 17.03.2018 01:38

Проблема в том, что вы указываете на index.php, который находится в вашей корневой папке, замените его, используя ./index.php.

Создайте файл .htaccess в папке проекта со следующим содержимым:

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

Вы видите, что часть ./ означает Добавьте путь к месту, где существует .htaccess

Можете ли вы обновить свой вопрос структурой папок?

Spoody 17.03.2018 21:57

Только что сделал. Пожалуйста, проверьте.

Jayden 17.03.2018 22:11

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