LNMP:5. CentOS 7 安装 PHP7.2

PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,尤其适用于Web开发。PHP可以嵌入到HTML中,并与多种数据库集成,最常用的是MySQL。其灵活性、易学性和强大的社区支持使得PHP成为开发动态网页和Web应用程序的首选语言之一。

官网:https://www.php.net/


安装与初始化配置


命令

[rover@localhost ~]# su -
[root@localhost ~]# cd /usr/local/src

#安装依赖环境
[root@localhost src]# yum -y install libxml2* openssl* libcurl* libjpeg* libpng* freetype* libmcrypt* gcc

#下载php7.2.32安装包
[root@localhost src]# wget -c https://www.php.net/distributions/php-7.2.32.tar.gz

#解压安装包
[root@localhost src]# tar -zxvf php-7.2.32.tar.gz

#进入php-7.2.32目录
[root@localhost src]# cd php-7.2.32

#配置
[root@localhost php-7.2.32]# ./configure --prefix=/usr/local/php --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-simplexml --enable-xml --disable-rpath --enable-bcmath --enable-soap --enable-zip --with-curl --enable-fpm --enable-mbstring --enable-sockets --with-gd --with-openssl --with-mhash --enable-opcache --disable-fileinfo

#编译并安装
[root@localhost php-7.2.32]# make && make install   (过程约10分钟, 因系统配置而定)

#配置服务
[root@localhost php-7.2.32]# ln /usr/local/php/sbin/php-fpm /usr/local/sbin
[root@localhost php-7.2.32]# cp /usr/local/src/php-7.2.32/php.ini-development /usr/local/php/lib/php.ini
[root@localhost php-7.2.32]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@localhost php-7.2.32]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
[root@localhost php-7.2.32]# cp -R /usr/local/php/sbin/php-fpm /etc/init.d/php-fpm
[root@localhost php-7.2.32]# echo 'export PATH="/usr/local/php/bin:$PATH"' >> /etc/profile
[root@localhost php-7.2.32]# source /etc/profile
[root@localhost php-7.2.32]# vim /usr/local/php/etc/php-fpm.d/www.conf
- 23 user = nobody
- 24 group = nobody
+ 23 user = www
+ 24 group = www


#启动php服务
[root@localhost php-7.2.32]# /etc/init.d/php-fpm    启动服务(结束服务: killall php-fpm)

#修改nginx服务,使其支持php
[root@localhost php-7.2.32]# vim /usr/local/nginx/conf/nginx.conf

        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}
更改为
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
#重载Nginx服务
[root@localhost php-7.2.32]# systemctl reload nginx

#在nginx默认访问目录下创建phpinfo文件
[root@localhost php-7.2.32]# vim /usr/local/nginx/html/phpinfo.php
<?php
phpinfo();


#配置开机启动
[root@localhost php-7.2.32]# /usr/lib/systemd/system/php.service
[Unit]
Description=PHP serve
After=network.service
StartLimitIntervalSec=0

[Service]
Type=forking
Restart=always
RestartSec=1
ExecStart=/usr/local/php/sbin/php-fpm
ExecStop=/usr/local/php/sbin/php_stop.sh 

[Install]
WantedBy=multi-user.target

#将 PHP 加入系统开机启动并启动 PHP 服务
[root@localhost php-7.2.32]# systemctl enable php
[root@localhost php-7.2.32]# systemctl start php
分类:PHP 标签: LNMP环境 linux php web
作者头像

作者: rover

后端开发工程师,热爱Web技术。有多年开发经验,喜欢分享知识和经验。