Centos 7 下yum搭建lnmp环境(yum安装方式)
我们都知道linux下安装软件主要有三种方式:
1.源码编译安装,即下载软件源代码,利用gcc g++ make 等编译工具进行编译安装;
此方式的优点:可以指定软件版本,可选择性好;编译时可以手动指定需要加载的模块;管理的自由度大,可以修改源代码;
此方式的缺点:软件包之间的依赖关系不好解决,必须要匹配的依赖包;编译过程时间长,出错的地方和几率大,出错不好解决;
2.二进制包安装,比如redhat/centos/opensuse/fedora系列下的rpm 包,debian/ubuntu系列下的deb包,需要用到一些rpm dpkg等包管理器的命令安装;
此种方式的优点:已经编译后的二进制包,安装方便快捷;比编译方式更简单;报错信息更容易理解;
此种方式缺点:依赖关系不好解决,某些情况下一个软件包会依赖多个软件包;
3.使用发行版的包管理命令安装,比如redhat系列下的yum , debian系列下的apt等;
此种方式的优点:依赖关系自动解决,方便快捷;
此种方式的缺点:需要具备软件源,比如网络源,本地源,和网络环境有比较大的关系
以上就简单地介绍到此,接下来我们就使用第三种方式来搭建nginx+mysql+php+linux 环境。
第一步:安装nginx,搭建web服务器:
#将nginx的软件源添加到centos 7 系统中:
#yum localinstall http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
#安装nginx软件:
#yum install nginx -y
#启动nginx服务并加入开机启动项:
#systemctl start nginx && systemctl enable nginx
第二步:安装mysql数据库,此处我们安装5.7版本:
#将mysql5.7软件源添加到系统中
#yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
#安装数据库:
#yum install mysql-community-server mysql-community-devel -y
#启动数据库服务并加入开机启动项
#systemctl start mysqld && systemctl enable mysqld
#查看数据库运行状态:
#systemctl status mysqld
#查看mysql5.7的临时密码:
#grep 'password' /var/log/mysqld.log
此步很容易出现问题,对于没有初始化生成临时密码的情况,请在/etc/my.cnf下的mysqld下添加skip-grant-tables字段,然后重启服务,进行密码的修改和设置
#使用临时密码登陆数据库:
#mysql -u root -p
Centos7-mysql报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
sql中执行:取消设置密码策略:
mysql]set global validate_password_policy=0;
mysql]set global validate_password_length=1;
mysql]SET PASSWORD = PASSWORD('yourpwd');
#修改root用户密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
mysql> flush privileges;
mysql> quit; 或者\q 退出
第三步:安装PHP已经扩展:
#添加php的软件源到系统中,此处安装php7.2
#yum localinstall https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
#安装php软件已经扩展:
#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
#安装redis以及PHP的扩展:
#yum install redis git -y
#cd /usr/local/src/
#git clone https://github.com/phpredis/phpredis.git
#cd phpredis
#phpize
#./configure
#make && make install
此处使用了克隆源码编译安装,在此过程中也是比较容易出错的,很容易报错出现php加载不了此扩展,网上很多说直接修改php的配置文件/etc/php.ini,添加内容,然而并不好使,直接编译加载即可
#启动php-fpm服务:
systemctl start php-fpm
#查看下版本:php -v
此处没有报错的话,PHP的扩展都已经加载
第四步:整合nginx,使其支持解析我们的php程序:
#编辑nginx配置文件:
#vim /etc/nginx/conf.d/default.conf
#内容如下所示:
server {
listen 80; #监听端口号
server_name localhost; #主机名或域名或ip
root /www; #网站根目录
index index.php index.html; #支持解析的文件类型
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000; #代理到本机的9000端口,解析php程序
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
第五步:测试lnmp环境是否成功:
vim /www/index.php
<?php
phpinfo();
?>
此处使用了php的一个探针函数,此时就可以访问curl -I localhost 如果返回状态码200,并有一段网页代码,就OK 了
当然直接访问Centos 7系统的ip 地址,即可看到phpinfo所展示出来的内容。
可以看到,使用yum方式搭建lnmp环境还是很简单的。
————————————————
版权声明:本文为CSDN博主「筑梦之路」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_34777982/article/details/88234495
最新文章
- 怎么调试lua性能
- 2.2 ARM处理器工作模式
- MVC之前的那点事儿系列(4):Http Pipeline详细分析(上)
- 深入解读Linux与Android的相互关系(转-lining)
- linux 安装memcached
- iOS开发——极光推送
- [codevs1380]没有上司的舞会
- Javascript之<;script>;标签
- hdu 2825 Wireless Password(ac自己主动机&;amp;dp)
- 官方windows10升级工具
- [刷题]算法竞赛入门经典(第2版) 6-9/UVa127 - ";Accordian"; Patience
- Java的实例化
- python基础知识9---字符串拼接,深浅拷贝,三元运算
- Oracle不能并行直接添加主键的方法:先建唯一索引后建主键
- excel导出的时候从程序后台写到excel里的是文本,所以无法在excel中计算怎么办?
- 让QtCreator在调试时显示字符串 Qt调试助手 QtDebuggingHelper qtc-debugging-helper
- 纯css3实现图片三角形排列
- UVa 10791 最小公倍数的最小和(唯一分解定理)
- bzoj1054: [HAOI2008]移动玩具 状压+爆搜即可
- Linux 安装Zookeeper<;集群版>;(使用Mac远程访问)
热门文章
- 第36课 经典问题(下)----关于string的疑问
- Html学习之十八(表格与表单学习--统计表制作)
- 攻防世界web-NaNNaNNaNNaN-Batman
- 【Ribbon篇四】自定义负载均衡策略(4)
- xargs 用法理解
- 无法用排他锁锁定该数据库,以执行该操作。 (Microsoft SQL Server,错误: 5030)
- github README.md创建不了
- Pycharm2019.2.4专业版激活
- FineUIPro v6.0.0 大版本更新,快来围观!
- BFS(四):搜索状态判重