linux centos7安装php

安装PHP

第一步,添加 epel 源。

# 在centos7系统上进行操作

命令:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm7

第二步,安装编译工具及库文件。

# 在centos7系统上进行操作

命令:

yum install bzip2 bzip2-devel bisonbison-devel cmake curl curl-devel e2fsprogs e2fsprogs-devel epel-releasefreetype freetype-devel gcc gcc-c++ glibc glibc-devel glib2 glib2-devel gmpgmp-devel krb5 krb5-devel libmcrypt libmcrypt-devel libxslt libxslt-devellibcurl libcurl-devel libedit-devel libjpeg libjpeg-devel libpng libpng-devellibxml2 libxml2-devel libidn libidn-devel libzip-devel mcrypt mhash-develncurses ncurses-devel openssl openssl-devel openssl-develsqlite-devel readlinereadline-devel sqlite-devel uuid libuuid-devel zlib zlib-devel

第三步,下载php-5.6.36。

下载网址:PHP: Releases

下载命令:wget https://www.php.net/releases/php-5.6.36.tar.gz

linux 目录: /usr/local/src

注:如果使用wget直接下载不成功,就下载到window上,然后使用sftp上传到linux上

第四步,解压及编译安装php-5.6.36。

1、解压php-5.6.36.tar.gz

目录:/usr/local/src

命令:

tar zxvf php-5.6.36.tar.gz

2、配置php

# 进入解压后的文件夹 /usr/local/src/php-5.6.36

命令:

./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-fpm \
--with-openssl \
--with-mcrypt \
--enable-mbstring \
--enable-pdo \
--with-curl \
--disable-debug  \
--disable-rpath \
--enable-inline-optimization \
--with-bz2  \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-pdo-mysql \
--with-mysqli \
--with-gd \
--with-jpeg-dir \
--with-freetype-dir \
--enable-calendar

若结果显示“Thankyou for using PHP.”,则说明PHP配置成功。

3、编译安装php

目录: /usr/local/src/php-5.6.36

make需要花费较长时间(可能需要几分钟到十几分钟),需要耐心等待一会

命令:

make && make install

若结果显示“Build complete. Don't forget to run'make test'.”,则说明PHP编译安装成功。

4、make test 测试

make test

make test 也许要一些时间,需要耐心等待一会

第五步,查看环境变量和php版本。

命令:

/usr/local/php/sbin/php-fpm -v

结果:

PHP 5.6.36 (fpm-fcgi) (built: Mar 13 2023 11:34:24)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

第六步,配置php-fpm。

进入目录:cd /usr/local/src/php-5.6.36/

执行命令:

cp php.ini-production /etc/php.ini
cp php.ini-production /usr/local/php/etc/php.ini
cd /usr/local/php/etc/
cp php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

第七步,编辑php-fpm.conf和php.ini文件。

1、编辑php-fpm.conf文件,

vim /usr/local/php/etc/php-fpm.conf
  1. 去掉pid前面的分号

  1. 配置pid

将 
 pid = run/php-fpm.pid
修改成
 pid = /usr/local/php/var/run/php-fpm.pid

  1. 编辑/usr/local/php/etc/php.ini和/etc/php.ini文件

配置

vim /usr/local/php/etc/php.ini

vim /etc/php.ini

max_execution_time = 0
max_input_time = 600
post_max_size = 200M
upload_max_filesize = 200M
date.timezone = PRC
date.timezone 取消前面的分号

第八步,设置php-fpm开机启动。

1、复制init.d.php-fpm到/etc/init.d/php-fpm

cd /usr/local/src/php-5.6.36/sapi/fpm/
cp init.d.php-fpm /etc/init.d/php-fpm

2、为php-fpm添加执行权限

chmod +x /etc/init.d/php-fpm

3、设置开机启动

chkconfig php-fpm on

第九步,配置nginx支持php。

1、编辑nginx.conf

vim /etc/nginx/nginx.conf文件,做出如下修改:

server {
        listen       80;
        server_name  localhost;
        location / {
            # 修改html路径
            root   /usr/local/nginx/html;
            # 添加index.php
            index  index.html index.htm index.php;
        }
 
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            # 修改html路径 
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html/$fastcgi_script_name;
            include        fastcgi_params;
        }
}

注意标红的部分:

# 添加index.php

index index.html index.htm index.php;

2、重启nginx

/usr/local/nginx/sbin/nginx -s reload

第十步,启动php-fpm。

  1. 启动php-fpm

进入目录: cd /usr/local/php/sbin/

service php-fpm start

启动命令:service php-fpm start

或 /etc/init.d/php-fpm start

若结果显示

ERROR: [pool www] cannot get uid for user 'nginx'

[13-Mar-2023 14:07:02] ERROR: FPM initialization failed

failed

则需要使用命令“useradd nginx”添加用户nginx。

然后重新启动php-fpm。

看到如下字样即成功:

Starting php-fpm done

2、关闭php-fpm

service php-fpm stop

或 /etc/init.d/php-fpm stop

3、 重启php-fpm

service php-fpm restart

或 /etc/init.d/php-fpm restart

第十一步,查看php-fpm是否启动成功。

命令:lsof -i:9000

lsof -i:80

看到如上信息即表示成功

第十二步,在/usr/local/nginx/html下创建phpinfo.php文件。

1、在/usr/share/nginx/html/phpinfo.php中写入下面的代码:

<?php
 phpinfo();
?>

2、访问http://x.x.x.x/phpinfo.php

若页面出现“PHP Version 5.6.36”等信息,则说明PHP配置成功。

第十三步,测试PHP和MySQL关联。

  1. 在文件夹/usr/local/nginx/html中新建test.php脚本,

向该脚本中写入PHP测试连接数据库的代码,代码如下:

<?php
 
    $servername = "x.x.x.x"; # 当前服务器IP地址
    $username = "root";
    $password = "123456";
 
    // 创建连接
    $conn = mysqli_connect($servername, $username, $password);
    // 检测连接
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }
    echo "php可以连接MySQL...";
 
?>

2、访问http://x.x.x.x/test.php

即可进行访问测试。

如果可以看到如下字样即表是成功:

php可以连接MySQL...


版权声明:本文为u011159417原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。