2017-03-10 37 views
11

Tôi đang sử dụng gulp-connect-php để thử và chạy máy chủ php cục bộ bằng BrowserSync. Dưới đây là ngụm tập tin cấu hình của tôi:Không thể nhận/với gulp-connect-php

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' ]) 

Đoạn mã trên hoạt động khi tôi có một tập tin index.html trong thư mục ứng dụng của tôi nhưng khi tôi thay thế nó bằng một file index.php tôi nhận được thông báo sau:

Không thể GET/

Không chắc chắn những gì tôi đã làm sai ở đây?

+0

Chỉ cần trỏ trình duyệt của bạn tới http: // localhost: 3000/index.php – lofihelsinki

Trả lời

0

Điều tôi hiểu được từ câu hỏi của bạn là dịch vụ php không nhận dạng được tệp .php. Có 2 cách để có được công việc này.

Apache (httpd.conf), tìm kiếm DirectoryIndex và thay thế dòng với điều này (sẽ chỉ làm việc nếu bạn có dir_module kích hoạt, nhưng đó là mặc định trên hầu hết các cài đặt) hoặc thêm index.php

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

hoặc Tạo tệp .htaccess trong thư mục gốc web của bạn. Thêm dòng ...

DirectoryIndex index.php 

Hy vọng điều này sẽ hữu ích!

0

Bạn cần khai báo tên tệp chỉ mục, thêm và index đối tượng vào server.

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

Bạn cũng có thể thiết lập browserSync startpage để /index.php thay vì/ Sửa tôi không thể có được startPath để làm việc, vì vậy sử dụng index như trong ví dụ trên.

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

@ pramod-patil Tôi không nghĩ hướng dẫn Apache sẽ trợ giúp ở đây, vì trình duyệtSync không sử dụng Apache để phục vụ PHP.