Maison > développement back-end > PHP7 > Explication détaillée de l'installation LiNUX de PHP7.X

Explication détaillée de l'installation LiNUX de PHP7.X

coldplay.xixi
Libérer: 2023-02-17 20:24:01
avant
1910 Les gens l'ont consulté

Explication détaillée de l'installation LiNUX de PHP7.X

LiNUX安装PHP7.X
PHP版本:7.2.12
下载地址:http://cn2.php.net/get/php-7.2.12.tar.bz2/from/this/mirror

推荐(免费):PHP7

安装前准备,避免在安装PHP依赖包时报错:configure: error: mcrypt.h not found. Please reinstall libmcrypt.
添加 epel 源

centos 7.x

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Copier après la connexion

此处我将PHP 下载到 /usr/local 下,进入此目录下

tar -zxvf php7.2.12tar.gz
Copier après la connexion

进入目录

cd php-7.2.12
Copier après la connexion

安装PHP依赖包

yum install gcc libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
Copier après la connexion

如果依赖包安装好,就将以下整段复制编译,PHP目录到 /usr/local/php;

./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--enable-fpm \
--with-fpm-user=nginx  \
--with-fpm-group=nginx \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared  \
--enable-soap \
--with-libxml-dir \
--with-xmlrpc \
--with-openssl \
--with-mcrypt \
--with-mhash \
--with-pcre-regex \
--with-sqlite3 \
--with-zlib \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--with-cdb \
--enable-dom \
--enable-exif \
--enable-fileinfo \
--enable-filter \
--with-pcre-dir \
--enable-ftp \
--with-gd \
--with-openssl-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib-dir  \
--with-freetype-dir \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-gettext \
--with-gmp \
--with-mhash \
--enable-json \
--enable-mbstring \
--enable-mbregex \
--enable-mbregex-backtrack \
--with-libmbfl \
--with-onig \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-zlib-dir \
--with-pdo-sqlite \
--with-readline \
--enable-session \
--enable-shmop \
--enable-simplexml \
--enable-sockets  \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-libxml-dir \
--with-xsl \
--enable-zip \
--enable-mysqlnd-compression-support \
--with-pear \
--enable-opcache
Copier après la connexion

编译并安装:

make && make install
Copier après la connexion

编译完成之后,我们添加PHP命令到环境变量里

vim  /etc/profile
Copier après la connexion

在文件末尾加入:

PATH=$PATH:/usr/local/php/bin
export PATH
Copier après la connexion

要使改动立即生效执行

source /etc/profile
Copier après la connexion

查看PHP 版本

php -v
Copier après la connexion

Explication détaillée de linstallation LiNUX de PHP7.X

这时候,nginx还是不支持php的,它需要php-fpm来处理两者的依赖关系,所以我们要胚子php-fpm

cp php.ini-production /etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
Copier après la connexion

启动php-fpm

/etc/init.d/php-fpm start
Copier après la connexion

nginx和php-fpm整合
编辑/usr/local/nginx/nginx.conf

修改如下:
红框中 “#”号去掉
Explication détaillée de linstallation LiNUX de PHP7.X
Explication détaillée de linstallation LiNUX de PHP7.X
添加红框中内容
Explication détaillée de linstallation LiNUX de PHP7.X
修改内容,如下(找到如下开头内容)
Explication détaillée de linstallation LiNUX de PHP7.X

这里我将配置文件换到我自定义的文件中去,不做以上修改;
Explication détaillée de linstallation LiNUX de PHP7.X
只在文件末尾加入

client_max_body_size 200m;
include vhosts/*.conf;
Copier après la connexion

创建文件夹,并创建编辑 app.conf 文件

mkdir vhosts
vim app.conf
Copier après la connexion

编辑内容:

server
{
  listen       80;
  server_name 39.105.186.95   vv.vv.com;
  index index.php index.html;
  root  /home/html/angel;

  location ~ .*\.(php|php7)?$
  {
    #fastcgi_pass  unix:/tmp/php-cgi.sock;
    fastcgi_pass  127.0.0.1:9000;
    fastcgi_index index.html;
    include       /usr/local/nginx/conf/fastcgi.conf;
    client_max_body_size  1000m;
  }

  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  {
    expires      7d;
  }

  location ~ .*\.(js|css)?$
  {
    expires      1h;
  }

  if (!-e $request_filename) {
   rewrite ^/index.php(.*)$ /index.php?s=$1 last;
   rewrite ^(.*)$ /index.php?s=$1 last;
   break;
  }
}
Copier après la connexion

更多相关免费学习推荐:PHP7教程

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal