一.php7编译安装
1.1 首先下载并解压php安装包 php下载地址
//首先,进入/var/lnmp 目录, 没有的 mkdir lnmp 创建
cd /var/lnmp
//下载:
wget http://cn2.php.net/get/php-7.2.4.tar.xz/from/this/mirror
//解压:(tar 解压命令 -x 解压 -v 显示所有过程 -f 使用档案名字)
tar -xvf mirror
1.2 安装
这个时候你已经得到了解压后的php安装包, 可以 使用命令: ll 查看 进入解压后的文件夹:
cd php-7.2.4/
1.3安装常用的依赖:
yum -y install gcc gcc-c++ glibc automake autoconf libtool make libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel readline readline-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel openssl openssl-devel
1.4配置php (现在只是安装一下必要的扩展,等你需要额外的扩展完全可以以后再安装):
./configure --prefix=/usr/local/php --with-fpm-user=nginx --with-fpm-group=nginx --enable-fpm --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mhash --with-openssl --with-zlib --with-bz2 --with-curl --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-zlib --enable-mbstring --with-mcrypt --enable-sockets --with-iconv-dir --enable-zip --with-pcre-dir --with-pear --enable-session --enable-gd-native-ttf --enable-xml --with-freetype-dir --enable-gd-jis-conv --enable-inline-optimization --enable-shared --enable-soap --enable-bcmath --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-mbregex --enable-pcntl --with-xmlrpc --with-gettext --enable-exif --with-readline --enable-ftp --enable-redis --enable-pdo -enable-tokenizer --enable-zip
注意 这个地方会很容易出现错误,你只要注意configure error并百度安装相对应的环境就可以了
--prefix=/usr/local/php 这个是你的安装目录
--with-mysqli 这个是mysqli扩展
--with-fpm-user=nginx fpm用户
--with-fpm-group-nginx fpm用户组
当你看到如下页面就代表php可以安装了:
1.5执行命令:
make && make install
1.6.添加 PHP 命令到环境变量
//复制配置文件:
cp /var/lnmp/php-7.2.4/php.ini-development /usr/local/php/lib/php.ini
vim /etc/profile
//在结尾添加
PATH=$PATH:/usr/local/php/bin
export PATH
//保存后运行
source /etc/profile
//执行命令
php -v
//如果出现以下画面就代表php安装成功
2.配置php-fpm:
2.1.将启动文件加入systemctl,复制到系统文件夹中:
cp /var/lnmp/php-7.2.4/sapi/fpm/php-fpm.service /usr/lib/systemd/system
2.2.配置
//1.生成 php-fpm.conf
cd /usr/local/php/etc/
//复制默认文件
cp php-fpm.conf.default php-fpm.conf
//2.生成 www.conf
cd /usr/local/php/etc/php-fpm.d
//复制默认文件
cp www.conf.default www.conf
//编辑文件,将其中user = nginx group = nginx 改为 user = nobody group = nobody
vim www.conf
//修改user,group
user = nobody
group = nobody
2.3.启动
systemctl start php-fpm.service
2.4查看状态:
systemctl status php-fpm.service
如显示如下就代表启动成功
如果没启动成功:
错误1:
说明是80端口被占用: fuser -k 80/tcp, 重新启动
2.5将服务加入开机自启:
systemctl enable php-fpm.service
二.nginx1.8安装
1.1安装:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
1.2启动:
systemctl start nginx.service
1.3查看状态:
systemctl status nginx.service
如果出现以下画面就带代表安装成功
1.4将服务加入开机自启:
systemctl enable nginx.service
2.配置站点
2.1创建项目文件夹
mkdir /var/www
2.2创建iindex文件
vim /var/www/index.php
2.3编辑添加
2.4编辑nginx配置
vim /etc/nginx/conf.d/default.conf
server{
listen 80;
#server_name 你的域名
server_name www.tester-lnmp.com.cn tester-lnmp.com.cn;
#root 你的项目目录
root /var/www/html;
location / {
index index.html index.htm index.php;
#autoindex on;
}
location ~ \.php(.*)$ {
#root 你的项目目录
root /var/www/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
注意: 这里需要开启服务器80端口:
//查看80端口是否开启
firewall-cmd --query-port=80/tcp
//查看80端口被谁占用:
netstat -lnp|grep 80
//开启80端口
firewall-cmd --add-port=80/tcp --permanent # --permanent 永久生效,没有此参数重启后失效
//关闭80端口
firewall-cmd --remove-port=80/tcp --permanent # --permanent 永久生效,没有此参数重启后失效
// firewalld 基本使用
启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
2.5重启nginx服务:
systemctl restart nginx.service
2.6 访问,出现以下页面就代表nginx已经可以解析php文件了:
//你的域名
http://www.tester-lnmp.com.cn/
三.mysql5.7安装
1.安装mysql
1.1安装:
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
yum install mysql-community-server mysql-community-devel
1.2启动:
systemctl start mysqld
1.3查看状态:
systemctl status mysqld
1.4显示下图就代表启动成功:
1.5把服务加入开机自启:
systemctl enable mysqld
2.修改初始密码
//获取初始密码,最后就是初始密码了:
grep 'temporary password' /var/log/mysqld.log
//进入mysql:
mysql -u root -p
//修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
exit
3.配置php.ini,使php 与mysql link:
3.1修改php.ini 中的mysqli.default_socket ,这个值可以从 /etc/my.cnf 找到,如下:
//进入php.ini配置文件目录, 这里可以使用 find / -name 'php.ini' 命令查看php.ini位置
cd /usr/local/php/lib
//编辑php.ini
vim php.ini
//找到mysqli.default_socket, 修改
mysqli.default_socket = /var/lib/mysql/mysql.sock
3.2重启nginx和php-fpm
systemctl restart nginx.service
systemctl restart php-fpm.service
4.测试php操作mysql是否成功
4.1添加文件到/var/www文件夹中
vim /var/www/testMysql.php
添加内容为
connect_errno) {
echo "连接失败" . $mysqli->connect_error;
} else {
echo '连接成功!';
}
现在你访问 域名/testMysql.php 如果显示 '连接成功!' 就代表 lnmp环境搭建成功了~
下一篇: CentOS7 安装多版本php
备注: 该文章来源参考:https://blog.csdn.net/luo1324574369/article/details/80036532