在CentOS上 用node快速搭建文件服务器

来源:互联网 发布:数控车宏程序编程实例 编辑:程序博客网 时间:2024/06/02 05:11

在CentOS上 用node快速搭建文件服务器

前言

    由于经常翻墙去看墙外的世界,所以在弄了一个服务器,最近想着把一些访问慢的资源放到服务器上,这样平时开发是编译速度会快不少,但是用tomcat等都是比较耗时,所以需要找一个快速的文件服务器搭建方案。

一、安装node

1、首先如果木有安装empl,需要先安装empl

    yum install epel-release 

2、通过yum安装node

sudo yum install nodejs

3、等待node安装完成后验证

node --version

4、安装npm

sudo yum install npm

二、安装http-server

1、安装

npm install http-server -g

-g表示全局安装

2、启动http-server

http-server [path] [options]

path 文件夹路径 option 设置

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.


一般用法:通过cd命令到需要的目录,然后

http-server -p 8090

8090 端口

这个时候打开防火墙端口,即可远程访问网络,但是在测试后发现,一旦断开命令行,就不执行了,所以我们需要让http-service在后台跑起来


三、安装PM2

1、安装

npm install -g pm2

-g 全局安装

2、pm常用命令

npm install pm2 -g     # 命令行安装 pm2 pm2 start app.js -i 4  # 后台运行pm2,启动4个app.js                          # 也可以把'max' 参数传递给 start                         # 正确的进程数目依赖于Cpu的核心数目pm2 start app.js --name my-api # 命名进程pm2 list               # 显示所有进程状态pm2 monit              # 监视所有进程pm2 logs               # 显示所有进程日志pm2 stop all           # 停止所有进程pm2 restart all        # 重启所有进程pm2 reload all         # 0 秒停机重载进程 (用于 NETWORKED 进程)pm2 stop 0             # 停止指定的进程pm2 restart 0          # 重启指定的进程pm2 startup            # 产生 init 脚本 保持进程活着pm2 web                # 运行健壮的 computer API endpoint (http://localhost:9615)pm2 delete 0           # 杀死指定的进程pm2 delete all         # 杀死全部进程

3、使用pm2执行http-server

pm2 start http-server

4、验证pm2上的http-server

pm2 list 

这里写图片描述

这表示http-server已经在后台跑起来了,这个时候关闭命令行也是可以的了


四、优化

   通过pm2跑起来http-server发现在后面添加-p指定端口木有作用,怎样修改端口呢,我的想法是直接修改默认端口为自己需要的端口即可

1、找到http-server的安装目录

如果是全局安装,文件在/usr/lib/node_modules打开之后可以找到http-server文件夹

2、修改端口

打开/usr/lib/node_modules/http-server/bin,然后修改bin文件夹下http-server文件

这里写图片描述

如图在84行左右,找到

portfinder.basePort = 8080;

将8080改成自己想要的端口即可

3、最后

pm2 restart http-server

restart一下http-server,完成


一个简单的文件服务器完成!

原创粉丝点击