基于鲲鹏服务器的LNMP配置
系统 Centos8
# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
卸载已经存在的旧版本的安装包
# rpm -qa | grep php #查看已经安装的PHP旧版本
# rpm -qa | grep php | xargs rpm -e #卸载已经安装的旧版,如果提示有依赖, 可以加上 --nodeps指令忽略依赖,强制删除
# yum remove php #另一种卸载php旧版本的指令,不过不要轻易使用,改方法会检查依赖,并将依赖一起卸载
使用如上命令一次针对nginx, mysql进行操作
安装前准备
yum -y install pcre pcre-devel openssl-devel #安装nginx安装必要的依赖
yum -y install libxml2-devel sqlite-devel #安装php必要依赖包
wget http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/aarch64/RPMS.classic/liboniguruma-devel-6.9.5.1-alt1.aarch64.rpm
Nginx安装
查看下yum源
基于阿里云镜像的,放心使用
创建用户及组
usergroup nginx #创建nginx组
useradd -g nginx -s /sbin/nologin nginx #创建nginx用户且不允许nginx用户登录
安装过程
# cd /home
# wget http://nginx.org/download/nginx-1.19.1.tar.gz #下载安装包
# tar -xzf nginx-1.19.1.tar.gz #解压下载包
# cd nginx-1.19.1
# ./configure --user=nginx --group=nginx --with-openssl=/usr/bin/ --pid-path=/usr/local/nginx/
# cat /proc/cpuinfo | grep processor #查看鲲鹏服务器cpu内核数量,我这里是2核
# make -j4 #编译,这里的4是核数的2倍,上面哪一步知道是双核,所以这里就是4
# make install #安装
创建nginx的systemctl管理脚本
- 创建nginx.service文件
vim /lib/systemd/system/nginx.service
#将下面代码复制到文件中,保存退出
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
- 配置目录限
chown -R nginx:nginx /usr/local/nginx
- 创建软连接
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
- 重载systemctld的管理配置
systemctl daemon-reload
- 加入开机启动
systemctl enable nginx.service
systemctl disable nginx.service #禁用开机启动
PHP安装
wget https://downloads.php.net/~carusogabriel/php-8.0.0alpha3.tar.gz #请注意,我这里是学习使用,正式环境请用php的稳定版,写文档的时候最新版本是7.4.8
wget http://mirrors.sohu.com/php/php-7.4.8.tar.gz #可以使用搜狐镜像站点下载最新文档版本,速度快
- 安装
tar -xzf php-8.0.0alpha3.tar.gz
cd php-8.0.0alpha3
./configure --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-mbstring --enable-zip --enable-mysqlnd --with-openssl=/usr/bin/