2016-11-30 3 views
10

Я, похоже, не понимаю, почему нам нужно запустить приложение Laravel с помощью php artisan serve, а просто запускать его с помощью Apache или nginx. Я знаю, что в процессе разработки мы используем artisan для запуска сайта и после развертывания на сервере, вы используете веб-сервер для загрузки сайта.В чем смысл запуска Laravel с командой «php artisan serve»?

Каково использование запуска приложения в ремесленнике в первую очередь?

+0

Вам не нужно ** **, чтобы сделать это. Для тех случаев, когда у вас нет веб-сервера по какой-либо причине. Это может быть что угодно, поэтому для покрытия случаев, когда сервер недоступен или неправильно настроен, вы можете использовать «php artisan serve». – Mjh

+0

Почему на нем недостаточно документации? – captainblack

+0

Зачем это было? Ничто не подразумевает, что вы ДОЛЖНЫ использовать его, оно просто существует для случаев, когда вы * можете его нуждаться. Некоторые функции не должны документироваться до такой степени, когда покрывается все возможные сценарии использования. У вас есть nginx/Apache? Большой! У вас нет, и вы хотите быстро проверить что-то или проверить часть своего проекта? Нет проблем, быстрый запуск 'php artisan serve' выполняет задание, для ввода в CLI требуется несколько секунд, чтобы запустить и запустить. Не нужно переубеждать эту особенность. – Mjh

ответ

13

Команда «Сервести» - это всего лишь ярлык для PHP Builtin Webserver, что-то из PHP имеет в своем распоряжении, поэтому его следует начинать с самого быстрого тестирования вашего приложения, вам просто нужно установить PHP, Composer и ваше приложение работает (если вам, конечно, ничего не нужно). Но если у вас уже установлен Nginx, нет никакого смысла, просто используйте его.

Неразумно использовать встроенный веб-сервер в производстве.

+0

Спасибо за объяснение. Но это странно, я выполняю эквивалентную команду, и она не загружает активы: 'php -S 127.0.0.1:8000 C:/wamp/www/pym/server.php' Знаете почему? – JCarlos

2

Одним из преимуществ использования php artisan serve над типичным веб-сервером во время разработки вы можете использовать Psysh в качестве отладчика (Laravel Tinker) для установки точки останова.

Например, в строке кода, который я хочу, чтобы разбить на I типа:

eval(\Psy\sh()); 

Затем я попал на страницу, которая будет работать, что часть кода, и когда он попадает в эту линию он сломается в Psy Shell repl (в окне командной строки, где я начал php artisan serve). Затем я могу проверить переменные и т. Д. В тот момент выполнения. Это очень полезно для отладки. Насколько я знаю, вы не можете сделать это с помощью Apache/Nginx. Это должно быть с помощью ремесленника (или запуска автоматизированных тестов).

Больше информации здесь:

https://tighten.co/blog/supercharge-your-laravel-tinker-workflow

http://psysh.org/

Смежные вопросы