我们都知道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服务器:
#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
#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
#查看数据库运行状态:
#查看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');
MysqL> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
MysqL> flush privileges;
第三步:安装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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。