㈠ 求助node-inspector全局模式安装后依然不能正常使用
npm的包安装分为本地安装(local)、全局安装(global)两种,从敲的命令行来看,差别只是有没有-g而已,比如 npm install grunt # 本地安装 npm install -g grunt-cli # 全局安装 这两种安装方式有什么区别呢?从npm官方文档的说明来看,主要区别在于(后面通过具体的例子来说明): 本地安装 1. 将安装包放在 ./node_moles 下(运行npm时所在的目录) 2. 可以通过 require() 来引入本地安装的包 全局安装 1. 将安装包放在 /usr/local 下 2. 可以直接在命令行里使用 本地安装 1、将安装包放在 ./node_moles 下(运行npm时所在的目录) 比如运行下面命令 npm install grunt --save-dev 那么,就会在当前目录下发现一个node_moles目录,进去后能够看到grunt这个包 casperchenMacBookPro:testUsemin casperchen$ ll total 200 drwxr-xr-x 16 casperchen staff 544B 12 14 23:17 node_moles 进入node_moles casperchenMacBookPro:node_moles casperchen$ ll total 0 drwxr-xr-x 16 casperchen staff 544B 12 5 00:49 grunt 2、可以通过 require() 来引入本地安装的包 直接来个例子,我们在项目根目录下创建test.js,里面的内容很简单 var grunt = require('grunt');grunt.log.writeln('hello grunt'); 然后在控制台运行test.js node test.js 然后就会看到如下输出 casperchenMacBookPro:testUsemin casperchen$ node test.js hello grunt 全局安装 1、将安装包放在 /usr/local 下 运行如下命令 npm install -g grunt-cli 然后进入/usr/local/bin目录,就会发现grunt-cli已经被放置在下面了 casperchenMacBookPro:bin casperchen$ pwd /usr/local/bin casperchenMacBookPro:bin casperchen$ ll grunt lrwxr-xr-x 1 root admin 39B 8 18 21:43 grunt -> ../lib/node_moles/grunt-cli/bin/grunt 可见,全局模块的真实安装路径在/usr/local/lib/node_moles/下,/usr/local/bin下的可执行文件只是软链接而已 2、可以直接在命令行里使用 实现细节在上面其实就讲到了,通过在`/usr/local/bin下创建软链接的方式实现。这里不赘述 更直观的例子 下面就直接看下,当我们在项目目录下运行grunt task(task为具体的grunt任务名,自行替换)时,发生了什么事情。这里要借助node-inspector。 首先,没接触过node-inspector的童鞋可以参考之前的文章了解下 运行如下命令开启调试 node-inspector & 见到如下输出 casperchenMacBookPro:tmp casperchen$ node-inspector & [1] 14390 casperchenMacBookPro:tmp casperchen$ Node Inspector v0.6.1 info - socket.io started Visit 127.0.0.1:8080/debug?port=5858 to start debugging. 接着,在当前任务下运行grunt任务 ^CcasperchenMacBookPro:testUsemin casperchen$ node --debug-brk $(which grunt) dev debugger listening on port 5858 接着,打开chrome浏览器,输入网址127.0.0.1:8080/debug?port=5858,就会自动进入断点调试状态。从一旁显示的tips可以看到,全局命令grunt其实就是/usr/local/lib/node_moles/grunt-cli/bin/grunt 按下F8接着往下跑,就会进如Gruntfile.js,此时的grunt,是本地安装的一个node包。全局命令跟本地的包名字一样,挺有迷惑性的。
㈡ elasticsearch-head 集群健康值: 未连接
访问测试时,Elasticsearch-head 集群健康值显示“未连接”,可能意味着存在一些配置或网络问题。接下来,我们将提供一套步骤帮助解决问题。在开始之前,请确保你已安装了正确的版本Elasticsearch-head,并且Elasticsearch服务正常运行。
首先,进行简单的访问测试,确保网络连接和端口设置正确。如果Elasticsearch-head无法加载,检查Elasticsearch的运行状态和端口配置。
解决方案步骤如下:
2.1 编辑elasticsearch-head目录下的Gruntfile.js文件。确保该文件路径正确,并且没有语法错误。如果有错误,修正后保存文件。
2.2 编辑 /etc/elasticsearch/elasticsearch.yml 文件,检查其中的网络配置。确保“network.host”设置为与运行Elasticsearch的服务器对应的主机名或IP地址。同样,确认“http.cors”部分允许来自Elasticsearch-head的CORS请求,包括“http.cors.allow-origin”设置为“*”以允许所有源,或者将其设置为你的服务器域名。
2.3 重启Elasticsearch服务以应用更改。在Linux系统中,可以通过执行“sudo systemctl restart elasticsearch”命令来完成此操作。重启后,尝试再次通过浏览器访问Elasticsearch-head。
3. 知识点总结
3.1 CORS(跨源资源共享)是一个用于允许跨源访问HTTP请求的机制。通过设置特定的HTTP响应头,服务器可以允许或拒绝来自不同源的请求,这对于在不同的网站之间进行数据交换和API调用至关重要。
3.2 在http.cors.x字段中,还有许多其他配置选项可以用于更精细地控制CORS行为。例如,可以使用“http.cors.allow-headers”指定允许的请求头,使用“http.cors.max-age”设置缓存预检请求的过期时间,以及使用“http.cors.methods”和“http.cors.headers”来定义允许的HTTP方法和请求头。正确配置这些字段,可以提高安全性同时确保跨源请求的流畅性。
㈢ 怎么在windows下安装grunt
Grunt基于Node.js,其中 npm 是 Node.js 的包管理器,而Grunt和Grunt插件就通过 npm 安装并管理。
Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用。
安装Node.js:
去Node.js官网,点击INSTALL下载并安装,现在的Node.js会自动安装npm。
安装完成之后,打开命令行,进行后续的操作(开始->输入CMD 或 开始->所有程序 ->命令提示符)。
进入Node.js的安装目录(默认路径为"C:\Program Files\nodejs"):
cd \pro*\nod*
可以通过以下2个命令,查看 node.js 和 npm 的版本号:
node -v
npm -v
安装Grunt:
如果你之前安装过老的0.3版本,请先卸载:
npm uninstall -g grunt
安装Grunt命令行(CLI):
npm install -g grunt-cli
注1:-g代表全局安装,Grunt有二个版本:服务器端版本(grunt)和客户端版本(grunt-cli)。
注2:安装grunt-cli并不等于安装了grunt!grunt CLI的任务很简单:调用与Gruntfile在同一目录中的grunt。这样带来的好处是,允许你在同一个系统上同时安装多个版本的grunt。而grunt使用模块结构,除了安装命令行界面以外,还要根据需要安装相应的模块。这些模块应该采用局部安装,因为不同项目可能需要同一个模块的不同版本。
上述命令执行完后,grunt 命令就被加入到你的系统路径中了,以后就可以在任何目录下执行此命令了。
创建新的Grunt项目:
假设这个项目安装在D盘根目录,我们首先进度D盘:
d:
创建项目文件夹:
mkdir testProject
进入文件夹:
cd testProject
接着在你的项目文件夹根目录下添加两个文件:package.json 和 Gruntfile。
package.json: 此文件被npm用于存储项目的元数据,以便将此项目发布为npm模块。
Gruntfile: 此文件被命名为 Gruntfile.js 或 Gruntfile.coffee,用来配置或定义任务(task)并加载Grunt插件。
创建package.json文件:
package.json应当放置于项目的根目录中,与Gruntfile在同一目录中,并且应该与项目的源代码一起被提交。大部分 grunt-init 模版都会自动创建特定于项目的package.json文件。
方法一:执行 npm init 命令(根据默认的grunt-init模板,引导你创建一个“基本”的package.json文件):
npm init
根据提示填写信息(都允为空):
name: (GruntT)// 模块名称:只能包含小写字母数字和中划线,如果为空则使用项目文件夹名称代替
version: (0.0.0)// 版本号
description:// 描述:会在npm搜索列表中显示
entry point: (index.js)// 模块入口文件
test command:// 测试脚本
git repository:// git仓库地址
keywords:// 关键字:用于npm搜索,多个关键字用空格分开
author:// 作者
license: (BSD-2-Clause) // 开原协议
方法二:手动创建package.json文件,添加项目/模块的描述信息:
{
"name": "my-project",
"version": "0.1.0"
}
附:
package.json官方文档
一个较完整的package.json文件
安装Grunt和Grunt插件:
方法一:手动添加,修改package.json文件:
{
"name": "my-project",
"version": "0.1.0",
"devDependencies": {
"grunt": "~0.4.1",
"grunt-contrib-cssmin": "~0.7.0"
}
}
注:devDependencies里面的参数,指定了项目依赖的Grunt和Grunt插件版本。其中"~0.7.0"代表安装该插件的某个特定版本,如果只需安装最新版本,可以改成"*"。
然后执行:
npm install
这时你会发现项目文件夹中多了个node_moles文件夹,其里面就是对应的Grunt和Grunt插件。
方法二:自动安装:
通过 npm install <mole> --save-dev 命令
安装最新版的Grunt:
npm install grunt --save-dev
接着安装我们所需要的插件:
npm install grunt-contrib-cssmin --save-dev
注:其中--save-dev,表示将它作为你的项目依赖添加到package.json文件中devDependencies内。如果你要安装指定版本的Grunt或者Grunt插件,只需要运行npm install grunt@VERSION --save-dev命令,其中VERSION就是你所需要的版本(指定版本号即可)。
附:Grunt官方插件列表,其中带星号的为官方维护的插件。
创建Gruntfile.js文件:
mole.exports = function(grunt) {
// 配置任务参数
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
cssmin: {
combine: {
files: {
'css/release/compress.css': ['css/*.css'] // 指定合并的CSS文件 ['css/base.css', 'css/global.css']
}
},
minify: {
options: {
keepSpecialComments: 0, /* 删除所有注释 */
banner: '/* minified css file */'
},
files: {
'css/release/master.min.css': ['css/master.css']
}
}
}
});
// 插件加载(加载 "cssmin" 模块)
grunt.loadNpmTasks('grunt-contrib-cssmin');
// 自定义任务:通过定义 default 任务,可以让Grunt默认执行一个或多个任务。
grunt.registerTask('default', ['cssmin']);
};
执行配置中所有的任务:
grunt
执行某个特定的任务:
grunt cssmin
测试:
接着我们在项目文件夹中创建个子文件夹,命名为:CSS
并且在里面创建base.css和master.css,2个CSS文件,你可以随便写点内容在里面。
然后在命令行中执行grunt,看到如下提示说明执行成功:
Running "cssmin:combine" (cssmin) task
File css/release/compress.css created.
Running "cssmin:minify" (cssmin) task
File css/release/master.min.css created.
Done, without errors.
参考文档:
http://www.gruntjs.net/docs/getting-started/
http://www.gruntjs.org/article/installing_grunt.html
㈣ windows8 安装什么可以管理nodejs版本
unt基于Node.js,其中 npm 是 Node.js 的包管理器,而Grunt和Grunt插件就通过 npm 安装并管理。Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用。
安装Node.js:
去Node.js官网,点击INSTALL下载并安装,现在的Node.js会自动安装npm。
安装完成之后,打开命令行渗判和,进行后续的操作(开始->输入CMD 或 开始->所有程序 ->命令提示符)。
进入Node.js的安装目录(默认路径为"C:\Program Files\nodejs"):
cd \pro*\nod*
可以通过以下2个命令,查看 node.js 和 npm 的版本号:
node -v
npm -v
安装Grunt:
如果你之前安装过老的0.3版本,请先卸载:
npm uninstall -g grunt
安装冲纳Grunt命令行(CLI):
npm install -g grunt-cli
注1:-g代表全局安装,Grunt有二个版本:服务器端版本(grunt)和客户端版本(grunt-cli)。
注2:安装grunt-cli并不等于安装了grunt!grunt CLI的任务很简单:调用与Gruntfile在同一目录中的grunt。这样带来的好处是,允许你在同一个系统上同时安装多个版本的grunt。而grunt使用模块结构,除了安装命令行界面以外,还要根据需要安装相应的模块。这些模块应该采用局部安装,因为不同项目可能需要同一个模块的不同版本丛盯。
上述命令执行完后,grunt 命令就被加入到你的系统路径中了,以后就可以在任何目录下执行此命令了。
㈤ grunt 压缩 合并 css 后 需要删除注释 与 合并同名 选择器 怎么配置 gruntfile.js
Grunt基于Node.js,其中 npm 是 Node.js 的包管理器,而Grunt和Grunt插件就通过 npm 安装并管理。
Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用。
安装Node.js:
去Node.js官网,点击INSTALL下载并安装,现在的Node.js会自动安装npm。
安装完成之后,打开命令行,进行后续的操作(开始->输入CMD 或 开始->所有程序 ->命令提示符)。
进入Node.js的安装目录(默认路径为"C:\Program Files\nodejs"):
cd \pro*\nod*