lnmp +redis 发布企业门户网站( 单机部署)

lnmp +redis 发布企业门户网站( 单机部署)

操作系统环境:Centos 7.9

服务器IP:172.20.26.140

1、部署lnmp

yum install epel-release -y

yum install yum-utils

创建新的nginx.repo文件:

vim /etc/yum.repos.d/nginx.repo

添加

[nginx-stable]

name=nginx stable repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=1

enabled=1

gpgkey=https://nginx.org/keys/nginx_signing.key

module_hotfixes=true

[nginx-mainline]

name=nginx mainline repo

baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/

gpgcheck=1

enabled=0

gpgkey=https://nginx.org/keys/nginx_signing.key

module_hotfixes=true

默认情况下,使用稳定的nginx软件包的存储库。如果要使用主线nginx软件包,请运行以下命令:

yum-config-manager --enable nginx-mainline

安装nginx、php、mariadb等

yum install nginx php php-fpm mariadb mairadb-server mariadb-devel  php-mysql php-redis php-devel -y

2、创建数据库

启动数据库服务

 systemctl start mariadb

登录数据库

mysql

或者mysql -uroot -p -h127.0.0.1

create database discus charset utf8;

grant all on discuz.* to “discuz”@localhost identified by “discuz”;  #(第一个discuz 是数据库,第二个discuz是用户,第三个discuz 是密码)

flush privileges;   #使配置生效

退出再次登录

mysql -udiscuz -pdiscuz   #用discuz用户登录 数据库

show databases;    #查看到我们所创建的数据库

3、上传网站代码

cd /usr/src  #进入源码目录下

rz 上传Discuz_X3.1_SC_UTF8   如果是公司网站代码,开发人员会提供网站代码

unzip Discuz_X3.1_SC_UTF8 -d /usr/share/nginx/html/  #解压到nginx web服务器默认发布目录下

chown apache. -R /usr/share/nginx/html/upload/   #确认php进程的用户是谁?然后进行授权,这里php进程的用户是apache

systemctl start nginx  #启动nginx

 浏览器中输入nginx 服务器IP地址即可访问到nginx默认的发布页面。

vi /usr/share/nginx/html/index.html   #nginx网站的默认发布目录

可以修改“ welcome to nginx!” 内容

修改nginx配置文件

vi /etc/nginx/conf.d/default.conf

把upload 路径加上,同时添加index.php 索引文件

开启location 规则

systemctl restart nginx   #重启nginx 服务

如果有问题可以查看日志

tail /var/log/nginx/error.log

检查端口是否有开启

       ss -ntlp

       systemctl start nginx php-fpm   #启动nginx 和php-fpm

       rpm -qc nginx                 #查看nginx配置文件路径

rpm -ql nginx                  #查看nginx发布目录路径

rpm -qd nginx                 #查看nginx帮助文档

4、配置网站安装向导

当前状态打红叉,当前状态不可写,由于php 进程的用户没有对以上目录及文件的写入权限,查看upload的权限755

ll /usr/share/nginx/html/upload/ -d

查看php 进程的用户是谁?如下显示,是apache 用户

ps -ef | grep php

chown apache. -R /usr/share/nginx/html/upload/

刷新页面,发现当前状态已变成可写,打绿勾

ll /usr/share/nginx/html/upload/ -d  #再查看一下权限

回到网页,点击 下一步

点击下一步

5、部署redis

rpm -q redis  #查看是否有安装过redis

yum install redis -y

systemctl start redis

netstat -ntlp   #由于是单机部署,所以redis 监听的是127.0.01的 6379端口,server的IP地址设置为127.0.0.1,如果redis 在别的服务器上,server IP地址设置为redis 所在服务器的IP地址

vi /usr/share/nginx/html/upload/config/config_global.php

通过redis-cli

keys *    #查询一下缓存情况

刷新discuz网站,keys *  没有数据

php -m    #查询php 是否有redis 模块

如果前面已安装了php-redis 模块就不会出现这个现象,如果没有安装,继续安装一下

yum install php-redis -y

安装完成后,再查看一下,查询php 是否已经有了redis 模块

 重启一下redis 与php相连的服务模块 php-fpm (修改配置文件或者增加模块,记得重启服务)

systemctl restart php-fpm

再刷新一下discuz 网站,通过redis-cli

keys *    #查询一下键,发现已经有缓存数据了

如果nginx部署了多个网站需要做redis 缓存,需要进行区分,不要写到一个数据库里,

select 2    #进入另一个redis缓存数据库

redis 默认给我们提供了16个数据库,默认使用的是0号数据库

select 0

可以通过get 命令查看相关缓存信息

例如:disuz 网站用admin用户登录后,get GC41J3_common_member_1 就可以查询到admin 相关的信息(邮箱、用户名、密码等等)

查看一下redis 的配置文件路径以及配置文件内容

rpm -qc redis

vi /etc/redis.conf

redis 数据都存放在内存中,如果断电,内容丢失,有两种模式SNAPSHOTTING 模式(写入到.rdb格式文件)和APPEND ONLY MODE (写入到.aof格式文件)可以将数据存到磁盘中。

SNAPSHOTTING 模式:

也可以手动触发

save  这是前台进行,会占用当前进程,如果用户正在进行写数据,它会进行阻塞。

bgsave 是通过fork执行的,叫写时复制,我们一般使用bgsave

写到redis的dump.rdb文件里

ls /var/lib/redis

APPEND ONLY MODE:追加模式

默认写入到appendonly.aof文件

appendfsync always   #最多之丢失1个键

appendfsync everysec  #最多会丢失1秒的数据,追加形式,每秒执行,所以aof 比rdb 文件要大很多,所以redis 重启服务,redis 从磁盘加载文件时 速度要比rdb 慢一点

appendonly  #默认是关闭的 appendonly no ,也可以打开appendonly yes

redis 默认先加载aof文件,如果aof 没有数据,就把rdb清空,如果rdb 是先启动的,aof是后来追加的,那么开启aof或者修改配置文件后千万不能马上重启服务,执行 redis-cli 进来,再执行bgrewiteaof ,这时会将rdb文件内容写到aof文件中,然后重启服务,数据就不会丢失。

查看aof、rdb 文件内容

查看aof、rdb 文件大小

ll -h /var/lib/redis/*

通过上面文件大小比较,我们就点击了几下discuz网站,aof 文件比rdb文件大很多。

后续继续研究 aof 、rdb 工作原理,redis 主从,集群等等。

  • 25
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
部署LNMP Redis 是一种常见的配置,在以下的点上,我将提供一个简单的指南来帮助部署LNMP Redis。 首先,确保您已经安装了Linux操作系统。您可以选择Ubuntu、CentOS等。 其次,安装Nginx(N)是部署LNMP堆栈的第一步。您可以通过运行适应您操作系统的命令来安装Nginx。例如,在Ubuntu上,您可以使用以下命令: ``` sudo apt-get update sudo apt-get install nginx ``` 然后,您需要安装MySQL(M)来处理数据库请求。您可以使用以下命令在Ubuntu上安装MySQL: ``` sudo apt-get install mysql-server ``` 接下来是PHP(P)的安装。LNMP中的PHP是用于处理后端逻辑的脚本语言。在Ubuntu上,您可以使用以下命令来安装PHP: ``` sudo apt-get install php-fpm php-mysql ``` 现在,您已经安装了LNMP堆栈所需的所有组件。 接下来,我们需要安装RedisRedis是内存数据库,用于高效地处理数据读写。您可以通过以下命令在Ubuntu上安装Redis: ``` sudo apt-get install redis-server ``` 安装完Redis后,您可以通过编辑配置文件来进行必要的更改。配置文件的位置可能会有所不同,但通常在 `/etc/redis/redis.conf` 中。 确保在配置文件中设置了适当的权限和安全性设置,例如允许远程连接、设置密码等。 完成以上步骤后,您需要重新启动相应的服务,使更改生效。您可以使用以下命令: ``` sudo service nginx restart sudo service mysql restart sudo service php-fpm restart sudo service redis-server restart ``` 然后,您可以通过访问nginx默认的HTML页面,确保Nginx和PHP已经正确安装。 总结:部署LNMP Redis可以通过依次安装Nginx、MySQL、PHP和Redis来实现。确保适当配置和启动相应的服务后,您可以通过访问网页来检查是否成功部署

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lqcbj_IT老混混

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值