月度归档:2018年07月

CentOS 7 安装 LNMP

记录在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,成功输入,配置成功