node.js服务器

Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动、非阻塞式I/O模型, [1]让JavaScript 运行在服务端的开发平台,它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本语言。简单来说,就是让原本运行在客户端的Javascript脚本能在服务器运行,构建一个网站。最近取证练习中遇到了node.js的网站,一开始并不知道如何下手,到后来的渐渐清晰起来,所以对node.js网站做个总结

拿到的网站源码

后台数据库

一般重构网站从数据库开始

这里使用的是mongodb

 直接1过滤27017的mongodb端口号,可以发现服务器中确实存在mongo的服务,只是在docker容器中

利用navicat等可视化工具实现mongodb的连接,注意MongoDB不需要密码!

数据库解决,还是比较简单的!

网站源码启动

重要的配置文件config.js

记录了网站的有关信息,包括启动端口,数据库等等!

node.js的网站内置http服务,不需要nginx、apache等web服务器进行代理,但也可以使用!

我们启动docker服务后可以发现有两个运行的容器,一个是,mongodb的数据库容器,另一个就是node.js的网站容器,这里发现网站使用8000端口,再通过容器的端口映射到宿主机的80端口

当我们外部需要访问网站的页面的时候,只需要相对应的服务器ip+80端口即可,不需要启动像nginx的服务软件

这里有个小心思,出题人故意在服务器上安装了nginx,其实并不是作为一个网站的代理功能,让我误以为网站是通过nginx服务启动的。

 通过find /的命令深度搜索nginx的配置文件,发现不但宿主机上存在nginx服务,docker容器内还有一个nginx服务,其实这些都是不需要的

打开最后一个配置文件

发现定义了一个网站重定向,但并不是指向我们的node.js网站的

我们再排除docker容器内的nginx服务

发现该容器并没有进行端口映射,相当于无效的容器!

所以,该node.js网站使用node.js内置的http服务与客户端连接,我们直接访问80即可

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值