splincodewd
@splincodewd
Developer

Почему именно таким образом устанавливаются фреймворки?

Я совсем далекий человек в php, но вот решил поучится и научится работать с фреймворками. Но мне совершенно непонятны некоторые вещи, расставьте все точки над "И".

1. Установил composer, вроде как
2. Захожу в папку test.ru (хост, который только что создал)
2. Захожу на сайт SlimFramework, копирую для установки команду
$ composer create-project slim/slim-skeleton [название папки]

зачем еще называть папку какую-то тут, если я хочу прямо в текущую?
ладно, назвал app: $ composer create-project slim/slim-skeleton app

3. В итоге смотрю тут папка app есть
открываю браузер, и index-ная страница доступна только по адресу test.ru/app/public
но ведь должно все работать отсюда, с моей точки зрения test.ru

К тому же, там еще и ошибка с каким-то файлом log, который не могу найти
7ba28e3863634785a8e8dab0464c3461.png

Да и когда был по адресу test.ru/app/public, нажал на ссылку, он подменял ее и вызывалась ошибка 404

На сайте требуют для запуска
$ cd [my-app-name]; php -S 0.0.0.0:8080 -t public public/index.php

но зачем? когда у меня запущен LAMP? как с этим быть
  • Вопрос задан
  • 580 просмотров
Решения вопроса 1
finnish
@finnish
Вопрос скорее к разработчикам composer.
Вам же могу посоветовать в качестве папки указывать точку:
$ composer create-project slim/slim-skeleton .
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
Открою тайну, что многие современные проекты держат в корне веб-сервера только точку входа в приложение (index.php) и ресурсы типа файлов JavaScript, CSS и картинок.
но ведь должно все работать отсюда, с моей точки зрения test.ru

Нет, вам кажется. Хотя, если вы настроите так, чтобы конфиг вашего веб-сервера указывал в веб-директорию проекта (туда, где точка входа лежит) - тогда всё так и будет. Но если же у вас стандартный конфиг какого-нибудь Denwer или Openserver - не ждите, что случится чудо.
На сайте требуют для запуска
$ cd [my-app-name]; php -S 0.0.0.0:8080 -t public public/index.php
но зачем? когда у меня запущен LAMP? как с этим быть

На сайте проекта предлагают отлаживать проекты на фреймворке с помощью встроенного в PHP сервера. Это вполне логичное решение. Например, я пишу на Symfony и разработку веду именно с помощью него (хотя мог бы настроить полный стек с Nginx+PHP-FPM).
Вам просто фреймворк предоставляет возможность упростить разработку, а пользоваться ей или нет - решайте сами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы