Nota: Eu não uso esta pilha há alguns anos. A julgar pelos comentários, este protocolo ficou bastante obsoleto. Pegue o que puder, mas saiba que YMMV.
Já precisou usar um script PHP em seu projeto Yeoman? É muito simples fazer isso, mantendo todas as vantagens que Yeoman traz para você (especialmente recarregar ao vivo).
A integração é realizada por meio de um middleware de Felix Gnass chamado gateway . O Gateway permite que você especifique manipuladores CGI para solicitações correspondentes a certas extensões (.php em nosso caso). O Sr. Gnass escreveu uma postagem no blog sobre o tópico desse protocolo, mas não incluiu instruções passo a passo para a integração de middleware, o que demorei um pouco para descobrir.
Código de exemplo
https://github.com/falsetto/php-from-yeoman
Gere um aplicativo com Yeoman
$ mkdir php-from-yeoman
$ cd php-from-yeoman
$ yo webapp
Certifique-se de que php-cgi está em seu $ PATH
$ which php-cgi
Se obtiver php-cgi not found
, veja como instalá-lo usando o Homebrew no OS X (para outros sistemas operacionais, o Google é seu amigo):
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install php54
Módulo de gateway de configuração
$ npm install gateway
Modifique Gruntfile.js
adicionando o seguinte próximo ao topo:
var gateway = require('gateway');
Modifique a matriz retornada pela função em connect.livereload.options.middleware
para ficar assim:
middleware: function (connect) {
return [
lrSnippet,
gateway(__dirname + '/app', {
'.php': 'php-cgi'
}),
mountFolder(connect, '.tmp'),
mountFolder(connect, 'app')
];
}
Renomear app / index.html e testar
$ mv app/index.html app/index.php
Adicione dentro da tag de .<?php echo "<h1>Hello from PHP!</h1>";
body
app/index.php
Em seguida, inicie seu servidor de desenvolvimento:
$ grunt server
Supondo que seu navegador foi iniciado e carregado , você deverá ver Hello from PHP! na página.http://localhost:9000/
Faça algumas alterações em app / index.php, salve o arquivo e seu navegador deverá recarregar automaticamente.