Home > Backend Development > PHP Tutorial > Detailed tutorial for installing php7.3 on Alibaba Cloud centos7.6

Detailed tutorial for installing php7.3 on Alibaba Cloud centos7.6

不言
Release: 2023-04-04 16:06:01
forward
27312 people have browsed it

This article brings you a detailed tutorial on installing php7.3 on Alibaba Cloud centos7.6. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

New user group

groupadd www
useradd -g www www
Copy after login
Copy after login

Download php

wget "https://downloads.php.net/~cmb/php-7.3.0.tar.gz"
tar xzvf php-7.3.0.tar.gz
cd  php-7.3.0
Copy after login
Copy after login

Compile

--with-fpm-user=www --with-fpm-group =www
Here, the program compiled using www www user and user group
is started, which belongs to this user and user group

./configure --prefix=/usr/local/php --with-fpm-user=www --with-fpm-group=www --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip --enable-fpm
Copy after login
Copy after login

Compilation error, resolve dependencies

configure: error : libxml2 not found. Please check your libxml2 installation.

yum install -y  libxml2-devel
Copy after login
Copy after login

configure: error: Please reinstall the BZip2 distribution

yum install -y  bzip2-devel
Copy after login
Copy after login

configure: error: cURL version 7.15.5 or later is required to compile php with cURL support

yum install -y  curl-devel
Copy after login
Copy after login

configure: error: jpeglib.h not found.

yum install -y  libjpeg-devel
Copy after login
Copy after login

configure: error: png.h not found.

yum install -y libpng-devel
Copy after login
Copy after login

configure: error: freetype- config not found.

yum install -y freetype-devel
Copy after login
Copy after login

configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

yum install -y libxslt-devel
Copy after login
Copy after login

configure: error: Please reinstall the libzip distribution

yum install -y libzip-devel
Copy after login
Copy after login

checking for libzip... configure: error: system libzip must be upgraded to version >= 0.11

#先删除旧版本
yum remove -y libzip

#下载编译安装
wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install
Copy after login
Copy after login

off_t undefined error

checking libzip... yes
checking for the location of zlib... /usr
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libzip... in default path: found in /usr/local
checking for zip_open in -lzip... yes
checking for zip_file_set_encryption in -lzip... yes
checking for zip_libzip_version in -lzip... no
checking stdbool.h usability... yes
checking stdbool.h presence... yes
checking for stdbool.h... yes
checking fts.h usability... yes
checking fts.h presence... yes
checking for fts.h... yes
checking for int8_t... (cached) yes
checking for int16_t... (cached) yes
checking for int32_t... (cached) yes
checking for int64_t... (cached) yes
checking for uint8_t... (cached) yes
checking for uint16_t... (cached) yes
checking for uint32_t... (cached) yes
checking for uint64_t... (cached) yes
checking for ssize_t... yes
checking size of short... (cached) 2
checking size of int... (cached) 4
checking size of long... (cached) 8
checking size of long long... (cached) 8
checking size of off_t... 0
configure: error: off_t undefined; check your library configuration
Copy after login
Copy after login

off_t type is in the header file unistd Defined in .h,
is programmed into long int in 32-bit systems, and compiled into long long int in 64-bit systems.
When compiling, the 64-bit dynamic link library is searched by default,
but By default, the search path is not added to the centos dynamic link library configuration file /etc/ld.so.conf.
At this time, you need to add /usr/local/lib64 /usr/lib64 to these 64-bit library file paths. Add it in.

#添加搜索路径到配置文件
echo '/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64'>>/etc/ld.so.conf

#然后 更新配置
ldconfig -v
Copy after login
Copy after login

Installation

make && make install
Copy after login
Copy after login

Error reporting
usr/local/include/zip.h:59:21: fatal error: zipconf.h: No such file or directory

cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h
Copy after login
Copy after login

Successful output

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP FPM binary:        /usr/local/php/sbin/
Installing PHP FPM defconfig:     /usr/local/php/etc/
Installing PHP FPM man page:      /usr/local/php/php/man/man8/
Installing PHP FPM status page:   /usr/local/php/php/php/fpm/
Installing phpdbg binary:         /usr/local/php/bin/
Installing phpdbg man page:       /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing PHP CGI man page:      /usr/local/php/php/man/man1/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:          /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php/lib/php/

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in phar:///home/flame/software/php-7.3.0/pear/install-pear-nozlib.phar/PEAR/PackageFile/v2/Validator.php on line 1933
[PEAR] Archive_Tar    - installed: 1.4.3
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.4.2
[PEAR] PEAR           - installed: 1.10.5
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/home/flame/software/php-7.3.0/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f phar.phar /usr/local/php/bin/phar
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/
Copy after login
Copy after login

Configure, create directory

cp php.ini-production /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
ln -s /usr/local/php/sbin/php-fpm /usr/local/bin
Copy after login
Copy after login
cd /usr/local/php/etc/php-fpm.d
vim www.conf
Copy after login
Copy after login

Input

[www]
listen = 127.0.0.1:9080   
listen.mode = 0666      

user = www  #php代码目录权限 需要跟这个一致,
group = www #php代码目录权限 需要跟这个一致

pm = dynamic
pm.max_children = 128
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 10000

rlimit_files = 1024

slowlog = log/$pool.log.slow
Copy after login
Copy after login

Join systemtl service

cd /home/flame/software/php-7.3.0/sapi/fpm
cp php-fpm.service /usr/lib/systemd/system/
Copy after login
Copy after login

Start

systemctl start php-fpm
Copy after login
Copy after login
#查看状态
systemctl status php-fpm

#得到输出
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-12-27 16:13:16 CST; 2s ago
 Main PID: 16835 (php-fpm)
   CGroup: /system.slice/php-fpm.service
           ├─16835 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
           ├─16836 php-fpm: pool www
           ├─16837 php-fpm: pool www
           ├─16838 php-fpm: pool www
           ├─16839 php-fpm: pool www
           ├─16840 php-fpm: pool www
           ├─16841 php-fpm: pool www
           ├─16842 php-fpm: pool www
           ├─16843 php-fpm: pool www
           ├─16844 php-fpm: pool www
           ├─16845 php-fpm: pool www
           ├─16846 php-fpm: pool www
           ├─16847 php-fpm: pool www
           ├─16848 php-fpm: pool www
           ├─16849 php-fpm: pool www
           ├─16850 php-fpm: pool www
           ├─16851 php-fpm: pool www
           ├─16852 php-fpm: pool www
           ├─16853 php-fpm: pool www
           ├─16854 php-fpm: pool www
           └─16855 php-fpm: pool www

Dec 27 16:13:16 iZj6cas4fyg41lxhngh1z0Z systemd[1]: Started The PHP FastCGI Process Manager.
Copy after login
Copy after login

Test

mkdir -p /home/www/webroot/php
cd /home/www/webroot/php
vim test.php
Copy after login
Copy after login

Enter

<?php phpinfo();

?>
Copy after login
Copy after login

Access
xxx.xxx.xxx.xxx:8080/test.php

php command environment

In $HOME/ The new content in .profile is

export PATH=$PATH:/usr/local/php/bin
Copy after login
Copy after login

         







twenty one

Posted 1 day ago

Alibaba Cloud centos7.6 install php7.3

    ##php
  • ##centos
  • ## 43 Reading                                                             It takes 26 minutes to read                                                                                                                                    



#
2

                      

                                                                                                                                                                                                                                                                                                                                                                                 

New user user group

groupadd www
useradd -g www www
Copy after login
Copy after login
Download php
wget "https://downloads.php.net/~cmb/php-7.3.0.tar.gz"
tar xzvf php-7.3.0.tar.gz
cd  php-7.3.0
Copy after login
Copy after login
CompileThe program compiled using www www user and user group

is started here and belongs to this user and user group

./configure --prefix=/usr/local/php --with-fpm-user=www --with-fpm-group=www --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip --enable-fpm
Copy after login
Copy after login

Compilation error, resolve dependencies

configure: error: libxml2 not found. Please check your libxml2 installation.

yum install -y  libxml2-devel
Copy after login
Copy after login

configure: error: Please reinstall the BZip2 distribution

yum install -y  bzip2-devel
Copy after login
Copy after login

configure: error: cURL version 7.15.5 or later is required to compile php with cURL support

yum install -y  curl-devel
Copy after login
Copy after login

configure: error: jpeglib.h not found.

yum install -y  libjpeg-devel
Copy after login
Copy after login
configure: error: png .h not found.

yum install -y libpng-devel
Copy after login
Copy after login

configure: error: freetype-config not found.
yum install -y freetype-devel
Copy after login
Copy after login
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

yum install -y libxslt-devel
Copy after login
Copy after login

configure: error: Please reinstall the libzip distribution

yum install -y libzip-devel
Copy after login
Copy after login
checking for libzip... configure: error: system libzip must be upgraded to version >= 0.11

#先删除旧版本
yum remove -y libzip

#下载编译安装
wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install
Copy after login
Copy after login
off_t undefined error

checking libzip... yes
checking for the location of zlib... /usr
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libzip... in default path: found in /usr/local
checking for zip_open in -lzip... yes
checking for zip_file_set_encryption in -lzip... yes
checking for zip_libzip_version in -lzip... no
checking stdbool.h usability... yes
checking stdbool.h presence... yes
checking for stdbool.h... yes
checking fts.h usability... yes
checking fts.h presence... yes
checking for fts.h... yes
checking for int8_t... (cached) yes
checking for int16_t... (cached) yes
checking for int32_t... (cached) yes
checking for int64_t... (cached) yes
checking for uint8_t... (cached) yes
checking for uint16_t... (cached) yes
checking for uint32_t... (cached) yes
checking for uint64_t... (cached) yes
checking for ssize_t... yes
checking size of short... (cached) 2
checking size of int... (cached) 4
checking size of long... (cached) 8
checking size of long long... (cached) 8
checking size of off_t... 0
configure: error: off_t undefined; check your library configuration
Copy after login
Copy after login
off_t type is defined in the header file unistd.h,

is programmed into long int in 32-bit systems, and compiled into long long int in 64-bit systems,

in When compiling, the 64-bit dynamic link library is searched by default.

However, by default, the search path is not added to the centos dynamic link library configuration file /etc/ld.so.conf.

At this time, you need to add /usr/local/lib64 /usr/lib64 Add these 64-bit library file paths.

#添加搜索路径到配置文件
echo '/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64'>>/etc/ld.so.conf

#然后 更新配置
ldconfig -v
Copy after login
Copy after login
Installation

make && make install
Copy after login
Copy after login
Error reporting

usr/local/include/zip.h:59:21: fatal error: zipconf.h: No such file or directory

cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h
Copy after login
Copy after login

Successful output

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP FPM binary:        /usr/local/php/sbin/
Installing PHP FPM defconfig:     /usr/local/php/etc/
Installing PHP FPM man page:      /usr/local/php/php/man/man8/
Installing PHP FPM status page:   /usr/local/php/php/php/fpm/
Installing phpdbg binary:         /usr/local/php/bin/
Installing phpdbg man page:       /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing PHP CGI man page:      /usr/local/php/php/man/man1/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:          /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php/lib/php/

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in phar:///home/flame/software/php-7.3.0/pear/install-pear-nozlib.phar/PEAR/PackageFile/v2/Validator.php on line 1933
[PEAR] Archive_Tar    - installed: 1.4.3
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.4.2
[PEAR] PEAR           - installed: 1.10.5
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/home/flame/software/php-7.3.0/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f phar.phar /usr/local/php/bin/phar
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/
Copy after login
Copy after login

Configure, create directory

cp php.ini-production /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
ln -s /usr/local/php/sbin/php-fpm /usr/local/bin
Copy after login
Copy after login
cd /usr/local/php/etc/php-fpm.d
vim www.conf
Copy after login
Copy after login

Input

[www]
listen = 127.0.0.1:9080   
listen.mode = 0666      

user = www  #php代码目录权限 需要跟这个一致,
group = www #php代码目录权限 需要跟这个一致

pm = dynamic
pm.max_children = 128
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 10000

rlimit_files = 1024

slowlog = log/$pool.log.slow
Copy after login
Copy after login

Join systemtl service
cd /home/flame/software/php-7.3.0/sapi/fpm
cp php-fpm.service /usr/lib/systemd/system/
Copy after login
Copy after login

Start
systemctl start php-fpm
Copy after login
Copy after login
#查看状态
systemctl status php-fpm

#得到输出
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-12-27 16:13:16 CST; 2s ago
 Main PID: 16835 (php-fpm)
   CGroup: /system.slice/php-fpm.service
           ├─16835 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
           ├─16836 php-fpm: pool www
           ├─16837 php-fpm: pool www
           ├─16838 php-fpm: pool www
           ├─16839 php-fpm: pool www
           ├─16840 php-fpm: pool www
           ├─16841 php-fpm: pool www
           ├─16842 php-fpm: pool www
           ├─16843 php-fpm: pool www
           ├─16844 php-fpm: pool www
           ├─16845 php-fpm: pool www
           ├─16846 php-fpm: pool www
           ├─16847 php-fpm: pool www
           ├─16848 php-fpm: pool www
           ├─16849 php-fpm: pool www
           ├─16850 php-fpm: pool www
           ├─16851 php-fpm: pool www
           ├─16852 php-fpm: pool www
           ├─16853 php-fpm: pool www
           ├─16854 php-fpm: pool www
           └─16855 php-fpm: pool www

Dec 27 16:13:16 iZj6cas4fyg41lxhngh1z0Z systemd[1]: Started The PHP FastCGI Process Manager.
Copy after login
Copy after login

Test

mkdir -p /home/www/webroot/php
cd /home/www/webroot/php
vim test.php
Copy after login
Copy after login

Enter

<?php phpinfo();

?>
Copy after login
Copy after login
Access

xxx.xxx.xxx.xxx:8080/test.php

php command environment

In $HOME/ The new content in .profile is

export PATH=$PATH:/usr/local/php/bin
Copy after login
Copy after login

               


  • Detailed tutorial for installing php7.3 on Alibaba Cloud centos7.6





你可能感兴趣的





评论                                                    

默认排序                        时间排序



载入中...

显示更多评论



The above is the detailed content of Detailed tutorial for installing php7.3 on Alibaba Cloud centos7.6. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:segmentfault.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template