Задача server
используется для запуска статического сервера с путем base
, установленным в качестве корня веб-сайта.
Пример: Подавайте ./web-root
как http://localhost:8080/
:
grunt.initConfig({
server: {
port: 8080,
base: './web-root'
}
});
Он будет работать аналогично серверу Apache, обслуживая статические файлы в зависимости от их пути, но использует модуль http://nodejs.org/api/http.html через connect для его настройки (источник).
Если вам нужно, чтобы он обслуживал не только статические файлы, вам следует рассмотреть определение пользовательской server
задачи:
grunt.registerTask('server', 'Start a custom web server.', function() {
grunt.log.writeln('Starting web server on port 1234.');
require('./server.js').listen(1234);
});
И собственный экземпляр сервера:
// server.js
var http = require('http');
module.exports = http.createServer(function (req, res) {
// ...
});
Могу ли я использовать сопоставление конкатенированных/минимизированных файлов серверной задачи, чтобы протестировать [...]
Конкатенация и минимизация имеют свои собственные задачи — concat
и min
-- но может использоваться вместе с задачей server
выполнить все 3.
Редактировать
Если вы хотите, чтобы он некоторое время оставался на сервере (а также для grunt), вы можете определить задачу как асинхронную (с серверным 'close'
событие):
grunt.registerTask('server', 'Start a custom web server.', function() {
var done = this.async();
grunt.log.writeln('Starting web server on port 1234.');
require('./server.js').listen(1234).on('close', done);
});
person
Jonathan Lonowski
schedule
13.08.2012