如何在服务器上搭建nodejs

如何在服务器上搭建nodejs,第1张

先确认下系统环境合不合要求
Python -V(确认python版本大于26)
访问>首次登录云服务器,要先进行用户设置。
用户设置
首先用passwd命令修改超级管理员root密码。
1

$ passwd
根据提示连续输入两次密码,很简单吧。
接着,要新建一个普通的管理账号并设置密码,用于日常的系统管理。
1
2

$ useradd user1
$ passwd user1
将用户添加进管理组,以便于统一管理管理员的权限。
1

$ usermod -a -G wheel user1
设置新用户的sudo权限。
1

$ visudo
执行visudo命令实际上编辑的是/etc/sudoers文件。 找到 root ALL=(ALL:ALL) ALL 这行,并下面添加一行
1

user1 ALL=(ALL:ALL) ALL

保存退出,以后就可用用sudo命令执行管理 *** 作了。
修改主机名
每台服务器都有自己的名字,一般web服务器会用网站的域名来做主机名。 [用户名@主机名 ~]$
1
2

$ hostname "=>

使用Nodejs搭建Web服务器是学习Nodejs比较全面的入门教程,因为实现Web服务器需要用到几个比较重要的模块:>

作为一个Web服务器应具备以下几个功能:

1、能显示以html/htm结尾的Web页面

2、能直接打开以js/css/json/text结尾的文件内容

3、显示资源

4、自动下载以apk/docx/zip结尾的文件

5、形如>

6、形如>

引入需要用到的几个模块:


//>
//创建一个服务var ]");});

在创建服务的时候需要传递一个匿名函数processRequest 对请求进行处理,processRequest接收2个参数,分别是request和response, request对象中包含了请求的所有内容,response是用来设置响应头以及对客户端做出响应 *** 作。


processRequest:function(request,response){    var hasExt = true;    var requestUrl = requesturl;    var pathName = urlparse(requestUrl)pathname;     //对请求的路径进行解码,防止中文乱码    pathName = decodeURI(pathName);     //如果路径中没有扩展名    if(pathextname(pathName) === ''){        //如果不是以/结尾的,加/并作301重定向        if (pathNamecharAt(pathNamelength-1) != "/"){            pathName += "/";            var redirect = ");            }        }    });}

请求处理函数中有几个重点需要说一下:

对于路径中有中文的,浏览器会自动进行编码(英文不变,中文会变),因此在接收到地址后,需要对地址进行解码,否则最后得到的路径和真实路径不相符,

当访问路径不是以具体的文件结尾,并且不是以/结尾,则需要通过重定向加上/,表示当前目录,否则当前路径下的静态资源会找不到

如果访问路径是目录,则列出该目录下所有文件及文件夹,并可以点击访问,为了让中文目录能正常显示,则还要在header中设置charset=utf-8

核心代码就这么多,大概140行左右,完整的代码已上传到github:>

如果要运行demo,打开cmd切换到根目录,运行node start 即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10766647.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存