Невозможно GET/с gulp -connect-php

Я использую gulp-connect-php, чтобы попытаться запустить php-сервер локально с помощью BrowserSync. Здесь мой файл конфигурации gulp:

var gulp = require('gulp'),
    connect = require('gulp-connect-php'),
    browserSync = require('browser-sync');

gulp.task('connect-sync', function() {
  connect.server({}, function (){
    browserSync({
        server: {
            baseDir: "app"
        },
     // proxy: '127.0.0.1:8000'
    });
  });

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

gulp.task( 'default', [ 'connect-sync' ] )

Этот код работает, когда у меня есть файл index.html в моем каталоге приложений, но когда я заменяю его файлом index.php, я получаю следующее сообщение:

Невозможно GET/

Не совсем уверен, что я сделал здесь неправильно?

Ответ 1

Что я понял из вашего вопроса, так это то, что php-служба не распознает .php файлы. Есть два способа получить эту работу.

Apache (httpd.conf), найдите DirectoryIndex и замените строку на это (будет работать, только если у вас включен dir_module, но это значение по умолчанию для большинства установок) или добавьте index.php

 DirectoryIndex index.php index.phtml index.html index.htm

или Создайте файл .htaccess в своем веб-корне. Добавьте строку...

DirectoryIndex index.php

Надеюсь, это поможет!

Ответ 2

Вам нужно объявить имя файла индекса, добавить и index объект в server.

...
browserSync({
    server: {
        baseDir: "app",
        index: "/index.php"
    },
});
...

Вы также можете установить начальную страницу browserSync в /index.php вместо/ Изменить Я не мог заставить startPath работать, поэтому используйте index, как в примере выше.

...
browserSync({
    server: {
        baseDir: "app"
    },
    startPath: "/index.php"
});
...

@pramod-patil Я не думаю, что здесь помогут Apache, так как browserSync не использует Apache для обслуживания PHP.