node静态服务器优缺点_使用node 做静态文件服务器

# 1. 使用server-static 包

使用node可以非常快速的方法把指定目录共享出去

前提条件:安装了node,附带有npm

要托管的文件目录为 /root/www

# 先创建一个目录用来存放脚本和依赖包

$mkdir nodeser &&cd nodeser

# 初始化项目,一路按enter使用默认值

$npm init

# 安装connect 包和 serve-static 包

$npminstall connect --save

$npminstall serve-static --save

然后编辑服务脚本ser.js

var connect = require("connect");

var serveStatic = require("serve-static");

var app = connect();

app.use(serveStatic("/root/www"));

app.listen(5000);

在当前目录执行 node ser.js

然后可以在浏览器上访问5000  来请求静态资源

# 2. 使用http-server 0配置实现一个 ftp server

1. mkdir ftpdir && cd ftpdir 创建项目目录

2. 先执行npm init 初始化一个项目,会生成 package.json

```

npm init

```

3. 安装http-server 包

```

npm install http-server

npm WARN prefer global http-server@0.11.1 should be installed with -g

nodeser@1.0.0 /home/builder/nodeser

└─┬ http-server@0.11.1

├── colors@1.0.3

├── corser@2.0.1

├─┬ ecstatic@3.3.2

│ ├── he@1.2.0

│ └── url-join@2.0.5

├── opener@1.4.3

├─┬ optimist@0.6.1

│ ├── minimist@0.0.10

│ └── wordwrap@0.0.3

├─┬ portfinder@1.0.24

│ └── async@1.5.2

└─┬ union@0.4.6

└── qs@2.3.3

```

4. 编辑package.json ,修改启动方式

```

"scripts": {

"test": "echo \"Error: no test specified\" && exit 1",

"start": "http-server -p 5000"

},

```

这里的 script 其实是提供给 npm 调用的,例如 当执行npm start 的时候就会调用 start 里的内容

所以也是可以直接执行 `http-server -p 5000` 启动,另外还有一些参数可以参考

```

Available Options:

-p Port to use (defaults to 8080)

-a Address to use (defaults to 0.0.0.0)

-d Show directory listings (defaults to 'True')

-i Display autoIndex (defaults to 'True')

-g or --gzip When enabled (defaults to 'False') it will serve ./public/some-file.js.gz in place of ./public/some-file.js when a gzipped version of the file exists and the request accepts gzip encoding.

-e or --ext Default file extension if none supplied (defaults to 'html')

-s or --silent Suppress log messages from output

--cors Enable CORS via the Access-Control-Allow-Origin header

-o Open browser window after starting the server

-c Set cache time (in seconds) for cache-control max-age header, e.g. -c10 for 10 seconds (defaults to '3600'). To disable caching, use -c-1.

-U or --utc Use UTC time format in log messages.

-P or --proxy Proxies all requests which can't be resolved locally to the given url. e.g.: -P http://someurl.com

-S or --ssl Enable https.

-C or --cert Path to ssl cert file (default: cert.pem).

-K or --key Path to ssl key file (default: key.pem).

-r or --robots Provide a /robots.txt (whose content defaults to 'User-agent: *\nDisallow: /')

-h or --help Print this list and exit.

```

5. 启动

```

npm start

> nodeser@1.0.0 start

> http-server -p 5000

Starting up http-server, serving ./

Available on:

http://127.0.0.1:5000

http://192.168.4.5:5000

http://192.168.4.41:5000

```

当然还可以使用 `http-server -p 5000` 直接启动

6.效果

如果是文件夹可以点进去,如果是文件则直接打开,非常方便

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值