Linux下安装Redis,Nginx并部署前后端分离项目

1.nohup

  • nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
  • nohup 是 no hang up 的缩写,就是不挂断的意思。
  • nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。
  • 在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。
  1. 首先使用 which nohup 查看linux服务器是否安装nohup
  2. 如果显示 /usr/bin/nohup 说明已经安装 ,如果没有,说明需要安装,如下:
1. 下载nohup
yum install coreutils

2.查看下载的nohup
cd /usr/bin
which nohup

3.配置nohup路径,全局使用
vi ~/.bash_profile
在PATH= $PATH: $HOME/bin后面添加:/usr/bin

4.配置的nohup立即生效,刷新配置变量
source ~/.bash_profile

5.查看版本
nohup --version

参数说明:
Command:要执行的命令。
Arg:一些参数,可以指定输出文件。
&:让命令在后台执行,终端退出后命令仍旧执行。

2.安装Redis

可以去官下载最新版 https://redis.io/download/  
也可以下载指定版本 https://download.redis.io/releases/ 
直接下载压缩包 然后通过filezilla.exe 上传到linux服务器

1.解压Redis

tar -zxvf redis-7.0.9.tar.gz    
也可以用  -C 指定解压路径  一般在/usr/local/redis 下
tar -zvxf redis-7.0.9.tar.gz -C /usr/local/redis

2.redis-7.0.9 目录就是我们解压好的目录

3.由于Redis是C++写的,所以还要安装gcc

可以用gcc --version  查看是否安装gcc ,执行出来版本号,说明安装了,否则需要安装
也可以使用 whereis gcc #查看gcc的位置

安装gcc命令  yum install gcc-c++

4.安装Redis

进入到redis目录,执行make命令进行编译:(编译内容过长,只截图了开头结尾)


安装Redis命令: make PREFIX=/usr/local/redis install

5.查看Redis是否安装成功

redis-cli -v  如果该命令提示 -bash: redis-cli: 未找到命令 
使用绝对路径执行 用whereis redis 查看安装路径  实在redis安装目录下的根目录bin
/usr/local/redis/bin/redis-cli -v

6.启动Redis

进入Redis安装根目录
[root@master bin]# cd /usr/local/redis/bin/
[root@master bin]# ll
总用量 21532
-rwxr-xr-x. 1 root root  5197848 4月  14 13:02 redis-benchmark
lrwxrwxrwx. 1 root root       12 4月  14 13:02 redis-check-aof -> redis-server
lrwxrwxrwx. 1 root root       12 4月  14 13:02 redis-check-rdb -> redis-server
-rwxr-xr-x. 1 root root  5411184 4月  14 13:02 redis-cli
lrwxrwxrwx. 1 root root       12 4月  14 13:02 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 11428616 4月  14 13:02 redis-server
[root@master bin]# ./redis-server 

后台启动redis

我们也可以更改Redis配置,将redis以守护进程形式挂在后台,不会显示图形界面

可以将redis解压目录下的redis.conf文件拷贝到redis-server 目录下 ,便于启动时指定配置文件
cp redis.conf /usr/local/redis/bin/
vi redis.conf 

将daemonize  将no修改为yes 以守护进程运行  注:windows下不支持守护进程方式  
vi redis.conf 找不到可以用 /daemonize 回车搜索

设置Redis密码

requirepass  找不到可以用 /requirepass 回车搜索

配置远程链接Redis

protected-mode 将yes改为no
Redis保护模式,该模式控制外部网是否可以连接redis服务,默认是yes,
所以默认我们外网是无法访问的,如需外网连接rendis服务则需要将yes改为no

外网远程链接 也需将 bind 127.0.0.1 注释 或者改为 bind *
protected-mode 控制了是否可以远程访问


指定配置文件启动Redis

./redis-server redis.conf

查看进程

查看Redis日志

[root@master bin]# /usr/local/redis/bin/redis-cli -p 6379  #链接Redis
127.0.0.1:6379> slowlog get 5
(error) NOAUTH Authentication required.  #出现这个 是需要你输入密码
127.0.0.1:6379> auth redis密码
OK
127.0.0.1:6379> slowlog get 5
(empty array)
127.0.0.1:6379> slowlog len
(integer) 0
127.0.0.1:6379>

3.将jar包上传到linux服务器部署

可以使用filezilla.exe 连接服务器进行上传文件

#使用nohup 将jar包挂在后台启动 ,同时将日志输出到nohup.out
nohup java -jar five-six-server-0.0.1-SNAPSHOT.jar & 	

启动jar包,查看日志

我们也可以使用shell脚本 
使用 touch start.sh  创建一个start.sh 的启动文件
授予权限   chmod +x start.sh
使用 vi start.sh 写入下边内容 使得每次启动都会创建一个 fivesix年月日时分秒.log日志文件 (
例如:fivesix2023-04-12 17:12:04.log)
#!/bin/bash
nohup java -jar five-six-server-0.0.1-SNAPSHOT.jar  > fivesix"$(date +"%Y-%m-%d %H:%M:%S")".log 2>&1 &

使用 cat fivesix年月日时分秒.log 查看日志
也可以 使用 tail -1000f fivesix年月日时分秒.log 查看日志

 注意:nohup: 重定向标准错误到标准输出 如果碰到这种情况  加上2>&1
 解释:
    1代表:标准输出(STDOUT)
    2代表:标准错误(STDERR)
    2>&1
    表示把标准错误(2)重定向到标准输出中(1),而标准输出又导入文件output里面,所以结果是标准错误和标准输出都导入文件output里  面了,也就是nohup.out 。

4.查看是否存在进程

ps -ef|grep java(或者 jar包名字.jar)

5.使用Nginx部署前端

1.下载Nginx安装包

2.上传到linux并解压

#配置configure --prefix 代表安装的路径,--with-http_ssl_module 安装ssl,--with-http_stub_status_module查看nginx的客户端状态
./configure --prefix=/usr/local/nginx-1.20.2 --with-http_ssl_module --with-http_stub_status_module


3. 使用 ./configure自动配置nginx

使用默认配置,在nginx安装根目录下执行(一般在 nginx: /usr/local/nginx )

也可以用 whereis nginx 来查看nginx安装目录 例: nginx: /usr/local/nginx

 ./configure  自动配置Nginx

#编译安装nginx   待 ./configure执行完成 依次执行make  make install 
make 
make install 

6.配置发布前端:

1.在nginx安装目录下 html目录下新建waves(名字随意)目录 也可省略,可放多个前端包
2.将前端包放在目录下并解压
3.配置nginx代理

    server {
        listen       8086;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   /usr/local/nginx/html/fivesixFrontEnd/mycli3/;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }

        location /api {
            proxy_pass http://192.168.68.135:8443/film;
        }

	}

5. Nginx常用命令

cd /usr/local/nginx/sbin/
./nginx  启动
./nginx -s stop  停止
./nginx -s quit  安全退出
./nginx -s reload  重新加载配置文件
ps aux|grep nginx  查看nginx进程
./nginx -s reload  重启Nginx

Nginx报错解决

使用下面命令和结果截图


posted @ 2023-04-12 20:10  旧歌  阅读(662)  评论(0编辑  收藏  举报