Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Erro no gulp server

Quando rodo o server aparece o seguinte erro:

"Cannot GET / "

No meu outro treinamento utilizando o Grunp quando tentei utilizar o meu plugin deu esse erro.

5 respostas

Não esta sendo encontrando a página index.html. Provavelmente (digo provavelmente porque você não compartilhou seu gulpfile.js), você esta colocando como raiz outra pasta. Aliás, como você não contextualizado, estou pressupondo que é na parte do browser sync.

Pode ficar tranquilo que mais de 500 pessoas já finalizaram esse curso sem problema algum. Só mesmo descobrir o que ocorreu.

Aguardamos seu código (do gulpfile.js)

Desculpe esqueci :( segue abaixo, alguns detalhes do meu projeto eu uso a seguinte estrutura das pastas:

dev

  • assets (css, js, sass, img)
    • inc ( header.inc.php e footer.inc.php)

index.php

quemsomos.php

contato.php

gulpfile.js

package.json


gruntfile.js

var gulp = require('gulp'),<br>
    imagemin = require('gulp-imagemin'),<br>
    clean = require('gulp-clean'),<br>
    concat = require('gulp-concat'),<br>
    htmlReplace = require('gulp-html-replace'),<br>
    uglify = require('gulp-uglify'),<br>
    usemin = require('gulp-usemin'),<br>
    cssmin = require('gulp-cssmin'),<br>
    browserSync = require('browser-sync'),<br>
    htmlmin = require('gulp-htmlmin');<br>

gulp.task('default', ['copy'], function(){

    gulp.start('build-img', 'usemin', 'minify', 'cssmin');
});


gulp.task('copy', ['clean'], function(){

    return gulp.src('dev/**/*')
    .pipe(gulp.dest('dist'));
});

gulp.task('clean', function(){

    return gulp.src('dist')
        .pipe(clean());
});

gulp.task('build-img', function(){

gulp.src('dist/assets/img/**/*')
    .pipe(imagemin())
    .pipe(gulp.dest('dist/assets/img/'));

});

gulp.task('usemin', function(){

    gulp.src('dist/*.php')
        .pipe(usemin({
            'js' : [uglify],
           'css' : [cssmin]
        }))
        .pipe(gulp.dest('dist/'));
});

gulp.task('server', function(){

    browserSync.init({

        server: {
            baseDir: 'dev'
        }
    });
});

gulp.task('minify', function() {
  return gulp.src('dev/*.php')
    .pipe(htmlmin({collapseWhitespace: true}))
    .pipe(gulp.dest('dist'));
});

gulp.task('cssmin', function () {
    gulp.src('dev/**/*.css')
        .pipe(cssmin())
        .pipe(gulp.dest('dist'));
});

Seu arquivo se chama index.php, então o server criado pelo gulp não entende que você quer acessar index.html. Nesse caso, terá que digitar index.php.

Mas pelo que eu entendi você quer usar browser sync com php? Não deverá funcionar, ele é para páginas estáticas e não dinâmicas. Para funcionar, talvez apenas através de um proxy.

Não sei se você fez todos os exercícios do curso, tem um que explica isso e como configurar:

https://cursos.alura.com.br/course/gulp/task/12357

solução!

Sim dei uma olhada e pesquisei na net instalei o gulp-connect-php - Funcionou :) e minha configuração do server ficou assim:

gulp.task('server', function() {
 connect.server({}, function (){
    browserSync({
      proxy: 'localhost/~joao/site'
    });
  });

  gulp.watch('dev/**/*.php').on('change', function () {
    browserSync.reload();
  });
});

Obrigado Flavio e parabéns pelos cursos sua didática é excelente.

Boa notícia! :) Então, com a ajuda do proxy também resolveu.

Sucesso e bom estudo meu aluno!