linux云服务器搭建 express后台 nginx转发
Posted oicb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux云服务器搭建 express后台 nginx转发相关的知识,希望对你有一定的参考价值。
购买云服务器 或者自己在本地搭建一个虚拟机 (我用的是腾讯云云服务器(CVM),或者可以购买阿里云 ecs服务器)
购买完成后 配置安全组 允许http https ftp 端口
一般运营商会提供说明,这一步主要是供我们链接服务器和访问服务器所用
配置完安全组之后,浏览器打开公网ip(买了服务器之后就会分配给你)
这时候会报错 应为服务器没有运行服务程序 所以找不到任何东西
这个时候打开我们的链接工具 putty 输入我们的链接信息 一般账号是root 密码自己重置
登录完成后,下一步 下载我们需要的包
下载各种包(一般使用的后台语言环境,运营商会提供对应的安装环境方法)
1. 安装node
wget https://nodejs.org/dist/v10.16.3/node-v10.16.3-linux-x64.tar.xz
这里的node链接不是最新的,可以去官网换成最新的,一定要linux版本的
或者直接现在本地机器下载完成后网服务器上丢,不一定非要在服务器来下载
2. 设置linux的软连接,类似于window的全局变量,可以在任何一个和文件使用node和npm
ln -s /root/node-v10.16.3-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v10.16.3-linux-x64/bin/npm /usr/local/bin/npm
设置完成后,任意一个文件夹
node -v npm -v
查看 Node.js 及 npm 版本信息
当然你还可以设置npm淘宝镜像
也可以全局安装yarn,同样需要设置yarn的软连接
3. 下载nvm, 控制node版本
1).执行以下命令,安装 git。
yum install -y git
2).执行以下命令,下载 NVM 源码并检查最新版本。
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
3).执行以下命令,配置 NVM 环境变量。
echo ". ~/.nvm/nvm.sh" >> /etc/profile
4).执行以下命令,读取环境变量。
source /etc/profile
5).执行以下命令,查看 Node.js 所有版本。
nvm list-remote
nvm install v**.**.**
nvm use v**.**.**
### 4. 安装nginx
cat /etc/redhat-release
所有用户 执行这句
添加 yum 源
Nginx 不在默认的 yum 源中,可以使用 epel 或者官网的 yum 源,这里使用官网的 yum 源。
sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
安装完 yum 源之后,可以查看一下。
sudo yum repolist
nginx repo 已经安装了。
yum 安装 Nginx,一条命令。
sudo yum install nginx
设置开机启动
$ sudo systemctl enable nginx
启动服务
$ sudo systemctl start nginx
停止服务
$ sudo systemctl restart nginx
重新加载,因为一般重新配置之后,不希望重启服务,这时可以使用重新加载。
$ sudo systemctl reload nginx
另外如果想先下载在解压安装的话,则需要如下操作
安装所需环境
Nginx 是 C语言 开发,建议在 Linux 上运行
一. gcc 安装
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++
二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
2.使用wget命令下载(推荐)。
wget -c https://nginx.org/download/nginx-1.10.1.tar.gz
tar -zxvf nginx-1.10.1.tar.gz
cd nginx-1.10.1
make
make install
启动 重启 和上面一样
完成了上面的之后,在home文件夹新建我们的express项目 记住地址然后回到我们的nginx的配置中(选择优先级一般是default > conf)完成代理
express项目是需要启动的
npm i
npm start
并且localhost:3000
这里要注意! 服务器安全组需要开启3000端口 不然访问不到
当然可以使用pm2来管理项目 方法一样
server {
listen 80; #代理80
server_name localhost; #可以换成域名
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
# 代理be 直接到我们的接口路劲
location /be {
proxy_pass http://localhost:3000/;
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers Content-Type;
add_header Access-Control-Allow-Methods POST;
add_header Access-Control-Allow-Methods GET;
}
# 代理网页 直接到我们的home文件夹
location / {
root /home/fe;
index index.html index.htm;
}
以上是关于linux云服务器搭建 express后台 nginx转发的主要内容,如果未能解决你的问题,请参考以下文章
NodeJs+Express+SqlServer简易后台API服务搭建
利用node.js写一个后台服务器---express框架的搭建及使用