2013-08-24 38 views
5

我應該指出,我沒有經驗的用戶第一,我的問題是'主機名'屬性不能有任何值分配除空字符串('' ),'0.0.0.0'和'localhost'。我得到:致命錯誤:getaddrinfo ENOTFOUND。 我在做什麼錯?Gruntjs:致命錯誤:getaddrinfo ENOTFOUND

如果說得對,我可以改變我通常在地址欄中輸入的地址,所以相反'localhost'我可以輸入'example.com'或類似的東西。

正如我上面提到的,我已經指定了不同的值,但只有三個已經工作。所以爲什麼這個'*'不起作用。

這裏是我的Gruntfile.js

module.exports = function(grunt) { 
    grunt.initConfig({ 
     pkg: grunt.file.readJSON('package.json'), 

     watch: { 
      scripts: { 
       files: ['*.js'], 
       options: { 
        livereload: true 
       } 
      }, 
      markup: { 
       files: ['*.html'], 
       options: { 
        livereload: true 
       } 
      }, 
      stylesheets: { 
       files: ['*.css'], 
       options: { 
        livereload: true 
       } 
      } 
     }, 
     connect: { 
      server: { 
       options: { 
        hostname: '*', 
        port: 2000, 
        base: '.' 
       } 
      } 
     } 
    }); 

    grunt.loadNpmTasks('grunt-contrib-watch'); 
    grunt.loadNpmTasks('grunt-contrib-connect'); 

    grunt.registerTask('default', ['connect','watch']); 

}; 

工作在Ubuntu 12.04 64位

的NodeJS 0.10.17

NPM 1.3.8

GruntJs 0.4.1

grunt-contrib-connect 0.3.0

+2

這將有很大的幫助,如果你寫下你正在嘗試做的,也是你的咕嚕config.js中的相關部分的文件,所以我們實際上可以幫助你在這裏 –

+0

不夠公平: )。我正在玩grunt-contrib-connect插件的設置,我的目的是檢查主機名屬性是什麼。如果說得對,我可以改變我通常在地址欄中輸入的地址,所以相反'localhost'我可以輸入'example.com'或類似的東西。正如我上面提到的,我已經爲它分配了不同的值,但其中只有三個已經工作。所以爲什麼這個'*'不起作用 – orustammanapov

+0

Errr。只需重新編輯您的文章,插入格式化GruntJS文件 –

回答

11

這是因爲咕嚕試圖綁定到該地址作爲服務器。無法將服務器綁定到任意IP地址或域名。

  • 0.0.0.0手段聽取綁定到該主機的所有IP地址
  • 127.0.0.1/localhost意味着綁定到本地適配器
  • 爲nnn.nnn.nnn.nnn綁定到特定的IP地址(它必須在本地解決)
+0

的相關部分的代碼,以便從主機文件獲取現有地址並將服務器綁定到我通過的地址。 – orustammanapov

+0

現在我明白了,謝謝! – orustammanapov

+0

感謝您指出正確的方向。我不得不將grunt config(conntect/options/hostname)中指定的主機名添加到我的主機文件中,並刷新我的dns緩存 –