Intereting Posts
Присоединиться к трем таблицам Добавление нескольких html-флажков с тем же именем в URL с помощью $ _GET Каков наилучший способ создания случайного хэша / строки? PHP-символы в Юникоде Как отправить электронную почту с локального сервера Wamp с помощью PHP? Переменная $ _SESSION не проходит и не знает, почему? он устанавливает, то не проходит Как загрузить tmp_name загруженного файла в Laravel 5.0 Lex и Yacc в PHP Перейти к другому случаю в инструкции PHP switch Выравнивание ларавелла неправильно вызвано несколькими встроенными css и внешними css в одном файле клипа Настройки веб-сервера и базы данных, чтобы получить часовой пояс UTC «правильно», Openshift перенаправляет wp-admin на https PHP: exif_read_data () не определено как установить переменную для внешнего файла javascript? Просто обновите мой сайт до версии 1.9.3.0 и получите ошибку SQLSTATE : Столбец не найден: 1054 Неизвестный столбец 'catalog_product_entity_group_price.is_percent'

Интеграция Grunt / Gulp и Livereload с существующим сервером Apache, обслуживающим PHP / Zend

Я работаю над проектом PHP, используя структуру Zend, которая выполняется локально с помощью Apache. Есть ли подключаемый модуль / настройка для Grunt / Gulp, который позволит мне использовать этот существующий сервер и перезагрузить мой браузер, когда будут внесены изменения в мои файлы phtml / php, CSS и JavaScript?

live-reload плагины с live-reload будут работать нормально. Он работает путем запуска отдельного сервера, который просто сообщает об изменениях – он не служит вашему коду напрямую.

Если вы используете глоток, вы следуете указаниям в README с помощью gulp-livereload для настройки и запуска сервера LR. Плагин уведомит LR-сервер о том, что файл был изменен, и LR-сервер уведомит ваш браузер о том, что это произошло.

Вы можете легко добавить часы в любой файл, который подан в браузер, и уведомить LR-сервер о них, даже если они не обрабатываются gulp (или grunt) в противном случае.

У вас есть три варианта запуска уведомления об изменениях в браузере.

  1. Если у вас есть отдельные сборки для разработки и производства (и я надеюсь, что вы это сделаете), используйте плагин gulp-embedlr для вставки тега скрипта в ваш HTML или PHP-файл.

  2. Если вы не можете получить это для работы с вашей установкой PHP, вы можете сами добавить тег сценария с помощью PHP, чтобы он был введен только при работе в режиме dev. Код можно получить из плагина embedlr, но он выглядит примерно так:

     <script type="text/javascript">document.write('<script src="//localhost:35729/livereload.js?snipver=1" type="text/javascript"><\/script>')</script> 

    Разумеется, вы можете настроить исходный домен и порт, чтобы он соответствовал вашей настройке LR, если это необходимо.

  3. Если вы не можете этого сделать, не имеете возможности запускать отдельные среды разработки и производства или просто не хотите, чтобы это обрабатывалось автоматически, что работает во всех браузерах (включая мобильные), вы можете установить браузер LiveReload плагин. Просто найдите его в плагине вашего браузера / в магазине / на рынке. Это требует, чтобы вы не забыли включить его каждый раз, когда выполняете работу по разработке.