目录

下载xampp:

xampp安装步骤

安装守护进程pm2

服务器上启动node服务

Debian 10(Buster)上安装Firewalld

服务器的安全组规则,开放端口

linux查看自己的ip地址,查询到得是私有ip信息


写在前面的

如果说将后端api代码部署到云服务器,并使用域名访问接口,那么需要一些前期准备;这里需要提一下的是,因为服务器有一个外网ip,因此可以在通过外网ip访问到服务器启动的服务;

前期准备

云服务器,注册域名,备案,域名解析(当然没有域名也是可以的,可以通过外网ip访问;但,例如小程序访问api就必须使用https://域名/api,才能访问,这是小程序限制的)

下载xampp:

下载安装包,官网链接:https://www.apachefriends.org/zh_cn/download.html ;根据服务器的linux系统/位数下载对应版本

查询linux版本:


cat /proc/version


pi节点云服务器 划算 云服务器做pi节点_pi节点云服务器 划算


uname -a


pi节点云服务器 划算 云服务器做pi节点_pi节点云服务器 划算_02

关于安装包下载被墙网速限制或无法下载,可以私我,我发给你们,linux和windows、os和版本都有的

xampp安装步骤

1、首先链接远程linux服务器;

这里使用的免费版xshell链接服务器;来到目录root/tools下面,可以新建目录或者其他目录;但需要确保有去操作权限,不然会提示(Text file busy)文本文件忙,无法操作或安装等;

来到目录:root/tools


cd /root/tools


下载:xampp


wget https://www.apachefriends.org/xampp-files/7.2.30/xampp-linux-x64-7.2.30-0-installer.run


如果提示链接失败,无法下载,那么办法是: 先把安装包下载到本地,然后使用fileZilla工具连接服务器,用工具上传文件到目录root/tools下;什么安装包下载被墙?私我~

pi节点云服务器 划算 云服务器做pi节点_xampp_03

2、xshell终端执行安装命令:

先赋予权限:


chmod -R 755 xampp-linux-x64-7.2.30-0-installer.run


 再执行安装:


./xampp-linux-x64-7.2.30-0-installer.run


安装过程,就是直接y,回车,如此循环,,,

xampp默认安装在/opt/lampp目录下

pi节点云服务器 划算 云服务器做pi节点_linux_04

3、启动:xampp服务

启动:


/opt/lampp/lampp start


或,如在opt/lampp目录下直接执行可以


.lampp start


pi节点云服务器 划算 云服务器做pi节点_linux_05

停止:


/opt/lampp/lampp stop


重启:


/opt/lampp/lampp restart


注:如果启动失败,可能服务器启动了其他服务,占用了,例如nginx服务,需要先停止nginx服务  sudo systemctl stop nginx

xampp启动成功之后,通过公网ip访问xampp启动页,http://公网ip/dashboard/

pi节点云服务器 划算 云服务器做pi节点_运维_06

4、访问数据库,修改数据库密码

点击这里进入数据库

pi节点云服务器 划算 云服务器做pi节点_运维_07

如果不能进入,提示:

pi节点云服务器 划算 云服务器做pi节点_linux_08

 那么,修改phpMyAdmin配置文件,配置文件目录/opt/lampp/etc/extra,一会说一下,各个配置文件对应文件;

pi节点云服务器 划算 云服务器做pi节点_xampp_09

修改如下:也就是将 Require local 改成 Require all granted

pi节点云服务器 划算 云服务器做pi节点_api_10

然后进入phpMyAdmin,进来之后修改密码;

pi节点云服务器 划算 云服务器做pi节点_pi节点云服务器 划算_11

pi节点云服务器 划算 云服务器做pi节点_运维_12

pi节点云服务器 划算 云服务器做pi节点_pi节点云服务器 划算_13

然后输入密码,右下角执行就可以了;

修改密码之后,发现无法连接数据了,因为数据库配置文件中的登录信息没有写上密码,所以登录失败;解决:打开配置文件,写上密码就可以。

目录:/opt/lampp/phpmyadmin

pi节点云服务器 划算 云服务器做pi节点_运维_14

$cfg['Servers'][$i]['password'] = '';

修改成刚刚更改的密码;

pi节点云服务器 划算 云服务器做pi节点_xampp_15

这样就能正常连接数据库了;

 

安装守护进程pm2

运行命令全局安装


npm install pm2 -g


 在linux下,安装之后运行命令 pm2 list,发现无法正常执行提示;


pm2 list


-bash: pm2: command not found


这是因为linux不会想windows一样全局配置,需要手动配置一下;

①、echo $PATH 一下路径

pi节点云服务器 划算 云服务器做pi节点_xampp_16

②、然后找到pm2的安装路径,一般在 npm install pm2 -g 的时候会提示路径;我的在 /usr/local/nodejs/bin 路径下

pi节点云服务器 划算 云服务器做pi节点_运维_17

执行:注意检查的路径


ln -s /usr/local/nodejs/bin/pm2 /usr/local/bin/


 然后:pm2 list

pi节点云服务器 划算 云服务器做pi节点_pi节点云服务器 划算_18

pm2可以正常使用了;一切准备就绪只差公网访问node服务。

 

服务器的安全组规则,开放端口

 

坑:服务器上的防火墙限制端口,导致外电脑无法通过公网ip访问服务器上启动node服务

 

Debian 10(Buster)上安装Firewalld

安装:


sudo apt -y install firewalld


查看防火墙状态:running:运行中;not running:未运行;


sudo firewall-cmd --state


systemctl status firewalld


关闭防火墙:


systemctl disable  firewalld


systemctl stop  firewalld


 开启防火墙:


systemctl start firewalld


查看防火墙开放的端口:如果没有返回,证明没有开放端口;


firewall-cmd --list-port


防火墙开放某个端口,以80为例子


firewall-cmd --zone=public --add-port=80/tcp --permanent


重启防火墙服务使新配置生效 


systemctl restart firewalld


重新查看开放的端口


firewall-cmd --list-port


防火墙开放端口:

执行:firewall-cmd --permanent --zone=public --add-port=3306/tcp;提示FirewallD is not running,证明未开启


firewall-cmd --permanent --zone=public --add-port=3306/tcp


查看用户配置好的防火墙端口规则


cat /etc/firewalld/zones/public.xml


 

linux查看自己的ip地址,注意:查询到得是私有ip信息,公网ip再网站上实例中查看


ifconfig


linux上的node.js的网站是否正常运行,端口是否正常监听


curl localhost:9000


or


curl 公网ip:9000


不知道为什么node启动服务,外网却无法访问

pi节点云服务器 划算 云服务器做pi节点_api_19


 

开启telnet客户端来验证ip和端口是否通


telnet ip 端口号


pi节点云服务器 划算 云服务器做pi节点_api_20


出现外网无法访问的问题:主要问题是在于:服务器的ECS配置:【安全组网】以及【服务器防火墙】导致的:

解决:

云服务器,Linux上安装xampp,搭建node服务,云服务器Firewalld、iptables,nginx反向代理:

服务器,linux系统配置端口号的坑!!!服务器防火墙配置!!!: