index.js 1.3 KB

123456789101112131415161718192021222324252627282930
  1. /* global hexo */
  2. 'use strict';
  3. hexo.config.server = Object.assign({
  4. port: 4000,
  5. log: false,
  6. // `undefined` uses Node's default (try `::` with fallback to `0.0.0.0`)
  7. ip: undefined,
  8. compress: false,
  9. header: true
  10. }, hexo.config.server);
  11. hexo.extend.console.register('server', 'Start the server.', {
  12. desc: 'Start the server and watch for file changes.',
  13. options: [
  14. {name: '-i, --ip', desc: 'Override the default server IP. Bind to all IP address by default.'},
  15. {name: '-p, --port', desc: 'Override the default port.'},
  16. {name: '-s, --static', desc: 'Only serve static files.'},
  17. {name: '-l, --log [format]', desc: 'Enable logger. Override log format.'},
  18. {name: '-o, --open', desc: 'Immediately open the server url in your default web browser.'}
  19. ]
  20. }, require('./lib/server'));
  21. hexo.extend.filter.register('server_middleware', require('./lib/middlewares/header'));
  22. hexo.extend.filter.register('server_middleware', require('./lib/middlewares/gzip'));
  23. hexo.extend.filter.register('server_middleware', require('./lib/middlewares/logger'));
  24. hexo.extend.filter.register('server_middleware', require('./lib/middlewares/route'));
  25. hexo.extend.filter.register('server_middleware', require('./lib/middlewares/static'));
  26. hexo.extend.filter.register('server_middleware', require('./lib/middlewares/redirect'));