记录在CentOS 7安装LNMP环境(PHP7 + MySQL5.7 + Nginx1.10)的过程。
一 、修改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
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
二 、安装 Nginx、MySQL、PHP
yum -y install nginx
yum -y install mysql-community-server
yum -y install php70w-devel php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-pdo.x86_64 php70w-mysqlnd php70w-fpm php70w-opcache php70w-pecl-redis php70w-pecl-mongo
三 、配置 MySQL
systemctl start mysqld #启动MySQL
grep 'temporary password' /var/log/mysqld.log #查找默认密码
#输出:2018-07-12T09:04:58.532626Z 1 [Note] A temporary password is generated for root@localhost: qrky5irl-y5O
mysql -uroot -p'qrky5irl-y5O' #登录MySQL
set password for 'root'@'localhost'=password('!@#123qwe'); #修改密码 包含字符,英文,数字
vim /etc/my.cnf #配置默认编码
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
systemctl restart mysqld #重启MySQL
systemctl enable mysqld #设置开机启动
配置文件:/etc/my.cnf
日志文件:/var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket 文件:/var/run/mysqld/mysqld.pid
四 、配置 Nginx
systemctl status firewalld #查看防火墙配置,如果显示active(running),则需要调整防火墙规则的配置。
vim /etc/firewalld/zones/public.xml #配置防火墙规则
<zone>
<service name="nginx"/>
<zone>
systemctl reload firewalld #重启firewalld
vim /etc/nginx/nginx.conf #修改Nginx配置
#在server{}里添加:
location / {
#定义首页索引文件的名称
index index.php index.html index.htm;
}
# PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI默认配置.
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
systemctl start nginx #启动Nginx
systemctl enable nginx #设置开机启动
五 、配置PHP
systemctl enable php-fpm #设置开机启动
systemctl start php-fpm #启动php-fpm
六 、测试
vim /usr/share/nginx/html/phpinfo.php #创建测试页
<?php
phpinfo();
?>
#页面访问http://IP地址/phpinfo.php,成功输入,配置成功