【Linux学习】Linux系统搭建LNMP环境(CentOS7+Nginx+MySQL+PHP)
前言
LAMP和LNMP的区别其实就是web服务的不同,LAMP是Apache,LNMP是Nginx。本篇文章主要讲Nginx如何安装,其他安装请参考:http://www.yujianxinliu.com/post-543.html
安装步骤
关闭防火墙
service firewalld stop
YUM源中没有Nginx,我们需要增加一个nginx的源nginx.repo
vi /etc/yum.repos.d/nginx.repo
输入以下内容
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
yum list nginx
开始安装,安装的就是Nginx官网的最新版本
yum -y install nginx
安装好后,需要启动Nginx
nginx
curl 127.0.0.1
如果安装成功的话,就会看到输出一个HTML的一个反馈,通俗来说就是使用命令访问了IP地址,然后以源代码的方式显示当前网页的内容。
开机启动设置
systemctl enable nginx
systemctl daemon-reload
Nginx安装完成!
安装PHP
yum -y install php php-fpm
启动php-fpm
service php-fpm start
关联Nginx和php
cd /etc/nginx/conf.d
vi default.conf
先放上成品图:
需要修改的内容:
1、添加index.php为默认文件
3、修改成保存php文件的位置:/usr/share/nginx/html
4、把/script修改成$document_root
保存退出。
进入cd /usr/share/nginx/html文件夹新建一个文件index.php,编辑内容
<?php phpinfo(); ?>
【2020年更正】修改nginx配置文件之前,必须停止服务:systemctl stop nginx,否则会出现以下的报错问题!
重启
service nginx restart
不出意外会报错。
Redirecting to /bin/systemctl restart nginx.service
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
解决办法:
ps -ef |grep nginx
发现root用户和nginx用户下确实是被占用了,那就先杀掉这2个进程再启动,这里看PID号是3176和3177
kill -9 3176
kill -9 3177
再输入
service nginx restart
关联成功!
安装MySQL
//1.安装
yum -y install mariadb mariadb-server
//2.开启MySQL服务
systemctl start mariadb.service
//3.设置开机启动MySQL服务
systemctl enable mariadb.service
//4.设置root帐户的密码
mysql_secure_installation
第一个问题问你是不是要设置密码,第二个问题让你输密码,第三个问题让你确认密码,剩余问题都直接回车!
关联PHP和MySQL
yum -y install php-mysql
安装常用的PHP模块
//例如,GD库,curl,mbstring,...
//1.安装:
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
//2.重启Nginx服务
service nginx restart
//然后,再次在浏览器中运行info.php,你会看到安装的模块的信息;
安装好了之后重启一下php服务
service php-fpm start
使用Navicat软件连接数据库
mysql -uroot -p
输入刚刚设置的密码,进入MySQL命令行后,输入命令开启远程权限
GRANT ALL PRIVILEGES ON *.* TO 'MySQL账号'@'%' IDENTIFIED BY '设置MySQL密码' WITH GRANT OPTION;
刷新缓存立即生效!
flush privileges;
主机名或IP地址:输入虚拟机IP地址 或你安装了MySQL服务的主机IP地址
端口:默认都是输入的3306
点击确定,双击列表,灰色变亮!连接成功!
好了,CentOS7环境下安装Nginx+MySQL+PHP(LNMP)就顺利结束了。
可能这是目前网络中最傻瓜式的安装教程了。
挺好的啊,很有用!