Centos7.6搭建LNMP环境
前言
系统为 centos7.6 nginx 为 1.12 php 为 7.2 MySQL 为 8.0.16
nginx 服务
安装依赖
sudo yum install -y yum-utils
安装 nginx 服务
sudo yum install -y nginx
配置
nginx
支持 phplocation ~ .php$ { try_files $uri =404; root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi.conf; }
其中第五行是你的 web 目录,我的(centos7.6+nginx1.12)环境默认在
usr/share/nginx/html
这个位置
安装 php 环境
如果之前安装过
php
服务那么请先卸载吧yum -y remove php*
由于 linux 的 yum 源不存在 php7.x,所以我们要改 yum 源
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安装 php72w 和各种扩展,选择自己需要的即可
yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
编辑 php.ini
在文件中(
vim /etc/php.ini
)找到;cgi.fix_pathinfo=1
改成cgi.fix_pathinfo=0
创建 nginx 用户和组
groupadd -r nginx useradd -r -g nginx nginx
这一步是为了保险,分别输入以上指令即可,不用管提示
编辑 php-fmp 文件
vim /etc/php-fpm.d/www.conf
将图中的
user = xxx
和group = xxx
改为user = nginx
group = nginx
nginx 伪静态设置(防止文章页 404)
server{ location / { if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.*) $1/index.php; } if (!-f $request_filename){ rewrite (.*) /index.php; } } }
启动 fpm、设置开启启动并重启 nginx
systemctl start php-fpm systemctl enable php-fpm systemctl restart nginx
安装 MySQL8.0 服务
首先去官网查看一下最新的安装包
下载 MySQL 源安装包
可以下载下来,用
xshell
工具上传到服务器,也可以用命令直接在服务器上下载wget http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
安装刚才下载的 yum 源
yum -y install mysql80-community-release-el7-3.noarch.rpm
查看一下安装效果
好了,开始安装!
yum install mysql-community-server
这里可以去喝一杯茶了,时间真的很长!!
安装完成 启动 MySQL 服务
systemctl start mysqld.service
可能会卡顿一下查看 MySQL 运行状态
systemctl status mysqld.service
初始化数据库密码
查看初始密码
grep "password" /var/log/mysqld.log
用后面那个密码登陆账户 root
登陆
mysql -uroot -p
密码是上一步获取到的改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '****************';
****换成你的密码即可。mysql 默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于 8 位。否则会提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 错误
设置自动启动
systemctl enable mysqld
systemctl daemon-reload
创建新用户
create user 'username'@'localhost' identified by 'password';
修改认证方式以登陆 phpmyadmin
ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
创建数据库
create typecho;
赋予数据库所有权
grant all on database.* to 'username'@'localhost' ;