创build一个运行PHP和Gulp和Livereload的服务器

我想调整这个代码来提供PHP文件。 我有MAMP运行本地服务器,但我无法弄清楚这个代码是如何工作的,以便进行必要的更改。 我知道Node服务器不会解释PHP文件,但是我对这个使用serve-staticserve-index架构感到困惑,因为显然我不能仅仅使用MAMP的localhost内的本地文件path来提供这些文件,对吧? 我也想知道为什么它需要2个端口(9000和35729)。

 gulp.task('connect', ['styles'], function () { var serveStatic = require('serve-static'); var serveIndex = require('serve-index'); var app = require('connect')() .use(require('connect-livereload')({port: 35729})) .use(serveStatic('.tmp')) .use(serveStatic('app')) .use('/bower_components', serveStatic('bower_components')) .use(serveIndex('app')); require('http').createServer(app) .listen(9000) .on('listening', function () { console.log('Started connect web server on http://localhost:9000'); }); }); gulp.task('serve', ['connect', 'watch'], function () { require('opn')('http://localhost:9000'); }); gulp.task('watch', ['connect'], function () { $.livereload.listen(); // watch for changes gulp.watch([ 'app/*.php', '.tmp/styles/**/*.css', 'app/scripts/**/*.js', 'app/images/**/*' ]).on('change', $.livereload.changed); gulp.watch('app/styles/**/*.scss', ['styles']); gulp.watch('bower.json', ['wiredep']); }); 

我基本上想使用PHP的模板(页脚,标题等)为一个网站,就像这个人张贴在这里 。

我觉得人们不再这样做了,所以对于使用静态资产和模板进行前端开发的build议(以后适应WordPress或其他基于PHP的CMS)是值得欢迎的。

编辑

请阅读: 运行BrowserSync和PHP的Gulp-webapp

我使用我的本地PHP安装作为服务器,比我用'gulp-connect-php'插件启动了这个服务器。 我还没有使用过XAMPP / MAMP,但可能只需要将“bin”和“ini”重新定位到XAMPP / MAMP的PHP安装。 但我没有一个解决scheme,你可以连接Gulp与你的数据库。

'gulp-connect-php'插件:

https://www.npmjs.com/package/gulp-connect-php

 var gulp = require('gulp'), livereload = require('gulp-livereload'), connectPHP = require('gulp-connect-php'); gulp.task('connect', function() { connectPHP.server({ hostname: '0.0.0.0', bin: 'C:/php/php.exe', ini: 'C:/php/php.ini', port: 8000, base: 'dev', livereload: true }); }); 

Gulp Connect只能启动一个节点服务器(如果我没有错的话)。

端口35729是为livereload javascript,你需要把它放在你的PHP,HTML文件的底部,你把你的其他脚本。 咕噜也使用完全相同的代码:

 <script src="//localhost:35729/livereload.js"></script> 

端口9000可能是Gulp Connect服务器定义的端口。