繁体   English   中英

将Grunt / Gulp和Livereload集成到服务于PHP / Zend的现有Apache服务器

[英]Integrating Grunt/Gulp and Livereload to existing Apache server serving PHP/Zend

我正在使用Zend框架开发一个PHP项目,该框架使用Apache在本地提供。 是否有Grunt / Gulp的插件/配置允许我使用这个现有服务器并在我的phtml / php,CSS和JavaScript文件发生变化时重新加载我的浏览器?

正常的live-reload插件可以正常工作。 它的工作原理是运行一个仅报告更改的单独服务器 - 它不直接为您的代码提供服务。

如果您正在使用gulp,请按照gulp-livereload README中的说明设置和运行LR服务器。 该插件将通知LR服务器文件已更改,LR服务器将通知您的浏览器已发生更改。

您可以轻松地将监视添加到提供给浏览器的任何文件上,并通知LR服务器 - 即使它们没有被gulp(或grunt)处理。

在浏览器中触发更改通知有三种选择。

  1. 如果您有单独的开发和生产版本(我希望您这样做),那么使用gulp-embedlr插件将脚本标记注入HTML或PHP文件。

  2. 如果您无法使用PHP设置,那么您可以使用PHP自己注入脚本标记,这样只有在开发模式下运行时才会注入脚本标记。 代码可以从embedlr插件获得,但它看起来像这样:

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

    显然,如果需要,您可以调整源域和端口以匹配您的LR设置。

  3. 如果你不能这样做,没有办法运行单独的开发和生产环境,或者只是不希望以自动方式处理所有浏览器(包括移动设备),你可以安装LiveReload浏览器插入。 只需在浏览器的插件/附加商店/市场/其他内容中查找它。 这要求您记住每次进行开发工作时都要打开它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM