Переход к официальным ресурсам:      Codeigniter4 / Документация / Github / Форум / CodeIgniter3
Привет! В настоящий момент я временно прекратил перевод документации по причине того, что она она содержит целый ряд неточностей, а также еще дорабатывается со стороны разработчиков. Если ты заинтересован в изучении фреймворка CodeIgniter 4, то приглашаю тебя на свой канал на YouTube (Перейти на канал), где я более подробно выкладываю занятия по данному фреймворку.


Установка фреймворка в ручном режиме

Не хочешь использовать Composer и решил попробовать установить фреймворк вручную? Тогда начинаем!

Итак, перед началом работ, тебе необходимо определиться, из какой ветки репозитория ты хочешь загрузить фреймворк. Существуют 2 основные ветки развития фреймворка - это стабильная (stable) версия и "девелопер" (developer) версия. Логически понятно, что stable-версия обеспечивает максимальную безопасность и стабильность работы всех основных компонентов системы. Это именно тот вариант, с которого я рекомендую начать работу. Используя developer-ветку ты получаешь доступ ко всем последним обновлениям и новым инструментам, но важно помнить, что в процессе работы ты можешь столкнуться с какими-либо проблемами. Что использовать - решать тебе.

Cамостоятельно загрузить последнюю stable-версию Codeigniter 4 из официального репозитория можно по этой ссылке, а если ты решил использовать developer-версию, тогда жми сюда.

1. Распакуй скачанный архив

Если ты скачал stable-версию, то после распаковки архива ты увидишь следующую структуру файлов и папок:

     app
     public
     system
     tests
     writable
     .gitignore
     composer.json
     CONTRIBUTING.md
     env
     license.txt
     phpunit.xml.dist
     README.md
     spark

В developer-ветке количество директорий и файлов может отличаться, но сути это не меняет. В любом случае, из всей структуры директорий и файлов нам понадобятся только 4 папки и 1 файл: /app, /public, /system, /writable и .env. За что отвечает каждая из директорий, ты можешь узнать из этого раздела документации, а пока смело копируй эти папки на сервер, в корневую директорию своего проекта.

Немного остановимся на файле .env. Файл .env (обрати внимание на обязательную точку в начале и если её нет, тогда переименуй файл, поставив эту точку) содержит бо́льшую часть переменных окружения и параметров фреймворка. Помимо этого, ты самостоятельно можешь указать в нём различные параметры, необходимые для работы. Например, это могут быть переменные с информацией для подключения к базе данных (хост, логин, пароль). Конечно, тебе никто не запрещает задавать параметры в конфигурационных файлах самого фреймворка (это вполне нормально), но тогда этот файл тебе не нужен, хотя это реально становится удобным, когда все настройки перед глазами и в одном файле. В дальнейшем, в других разделах документации, ты будешь встречать рекомендации по размещению тех или иных переменных именно в этом файле. Его совсем не обязательно копировать сразу. По мере необходимости ты можешь скопировать его позднее или вообще создать самостоятельно, ведь это простой текстовый файл.

Также тебе может понадобиться папка /tests, но только в том случае, если ты планируешь проводить отладку и тестирование своего проекта на базе phpUnit тестов (такая возможность предусмотрена).

После того, как все папки скопированы, структура твоей корневой директории должна выглядеть так:

     public_html
    |-- app
    |-- public
    |-- system
    |-- tests
    |-- writable
    |-- .env

Казалось бы все в порядке, но логически встаёт вопрос: "А как будет выполнен запуск проекта, если в корневой директории отсутствует файл /index.php"? Спокойно, сейчас всё расскажу!

В Codeigniter 4 разработчики решили добавить дополнительную безопасность и закрыть доступ ко всем директориям фреймворка на уровне сервера, создав стартовый файл запуска в директории /public. Таким образом, чтобы твой проект начал работать, тебе необходимо в адресной строке браузера указать: http://твой-адрес.ru/public. Всё будет работать, но согласись, не очень красивое решение, верно? А как же быть? Самое правильное решение, которое рекомендуют разработчики - это изменить в настройках самого web-сервера путь к корневой директории, назначив корнем проекта папку /public.

Некоторые компании, предоставляющие услуги виртуального хостинга, не позволяют вносить изменения в конфигурационные файлы web-сервера. В этом случае ты можешь попробовать понизить уровень безопасности и решить проблему так:

Все файлы из директории /public перенеси в корень своего проекта. Чтобы получилось вот так:

     public_html
    |-- app
    |-- system
    |-- tests
    |-- writable
    |-- .env
    |-- .htaccess
    |-- favicon.ico
    |-- index.php
    |-- robots.txt

После этого открой файл /index.php и практически в самом начале ты увидишь строку:

$pathsPath = FCPATH . '../app/Config/Paths.php'

В этой строке тебе необходимо удалить "../", тем самым задав расположение директорий фреймворка на том же уровне, что и файл index.php. Конечно, это не лучший вариант, но рабочий!

Есть еще один вариант, более правильный. Все директории, кроме папки /public перенеси на один уровень выше корневой директории, а содержимое папки /public по-прежнему скопируй в корень. В этом случае файл /index.php редактировать НЕ НУЖНО!

Приведу пример для второго варианта. На моем хостинге структура, по умолчанию, выглядит так:

     code4
    |-- public_html  <--- это мой корень
      |--  Здесь находятся все папки и php-файлы

Я вынес все директории фреймворка ВЫШЕ корня и конечная (правильная) структура получилась такой:

     code4
    |-- app
    |-- public_html  <--- это мой корень
    	|-- .htaccess
    	|-- favicon.ico
    	|-- index.php
    	|-- robots.txt
    |-- system
    |-- tests
    |-- writable
    |-- .env

Примечание автора: Если ты не совсем понимаешь, зачем нужен второй вариант, то я могу пояснить. Перемещая папки выше корневой директории, ты получаешь дополнительную защиту со стороны самого сервера. Злоумышленник, попытавшийся получить доступ к твоим файлам проекта через браузер, не сможет этого сделать, поскольку настройки сервера не дадут подняться выше корневой директории. В большинстве случаев это не требуется, но выбор остаётся за тобой.

Всё, на этом установка фреймворка Codeigniter завершена! Как видишь, из всей огромной инструкции тебе понадобилось лишь скопировать несколько директорий на сервер и разобраться с размещением директорий и файлов, но обрати внимание, выше я написал установка завершена, но я же нечего не сказал о первоначальной настройке, а она необходима!

Теперь остался последний шаг - внести начальные изменения в конфигурационные файлы проекта! Сделать это можно очень просто, прочитав следующий раздел документации Необходимые начальные настройки. Удачи! 


Комментарии к разделу:

Пока ещё никто не оставил своего комментария. Оставить свой!

Добавить комментарий к статье:


Ваше имя:
Ваша почта:

  Закрыть