十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章将为大家详细讲解有关在centos8自定义目录安装php7.3的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
公司主营业务:成都做网站、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出双柏免费做网站回馈大家。1.目录结构
源码目录:/home/werben/pkgsrc/php-7.3.11
安装目录:/home/werben/application/php7.3.11
2.下载php源码
# 官网地址:/tupian/20230522/manual-lookup.php https://www.php.net/distributions/php-7.3.11.tar.bz2
3.解压源码
tar --bzip -xvf php-7.3.11.tar.bz2 php-7.3.11
4.安装编译工具和库
yum install -y gcc gcc-c++ yum -y install libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel libicu-devel freetype-devel openldap-devel openldap openldap-devel
5.配置编译参数
#创建用户组和用户 groupadd www useradd -g www www #配置fpm的用户组和用户,以及安装其他扩展 ./configure --prefix=/home/werben/application/php7.3.11 \ --enable-fpm \ --with-fpm-user=www \ --with-fpm-group=www \ --enable-mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-mysqlnd-compression-support \ --with-iconv-dir \ --with-freetype-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib \ --with-libxml-dir \ --enable-xml \ --disable-rpath \ --enable-bcmath \ --enable-shmop \ --enable-sysvsem \ --enable-inline-optimization \ --with-curl \ --enable-mbregex \ --enable-mbstring \ --enable-intl \ --with-mcrypt \ --with-libmbfl \ --enable-ftp \ --with-gd \ --enable-gd-jis-conv \ --enable-gd-native-ttf \ --with-openssl \ --with-mhash \ --enable-pcntl \ --enable-sockets \ --with-xmlrpc \ --enable-zip \ --enable-soap \ --with-gettext \ --disable-fileinfo \ --enable-opcache \ --with-pear \ --enable-maintainer-zts \ --with-ldap=shared \ --without-gdbm #上面的步骤可能会出现很多问题,如需要重新安装libzip,需要安装ldap,需要安装cmake #重新安装libzip需要安装cmake,这里记录一下cmake的安装步骤,其他问题自己百度解决了, #不记录了,中间自己去官网下了几个新的cmake版本,编译过程中都出错了。 #发现宝塔用的是2.8.X的版本。这里我用的版本是3.5.2的版本 wget /tupian/20230522/cmake-3.5.2.tar.gz tar xvf cmake-3.5.2.tar.gz cd cmake-3.5.2 ./bootstrap --prefix=/usr/local/cmake gmake gmake install cd /usr/local/cmake/bin ln -s /usr/local/cmake/bin/cmake /usr/bin/ cmake --version #接下来安装libzip wget /tupian/20230522/libzip-1.5.2.tar.gz tar -zxf libzip-1.5.2.tar.gz cd libzip-1.5.2 mkdir build cd build cmake .. make -j4 make install
6.安装make工具
#如果提示make命令找不到,则才需要安装make工具 yum -y install gcc automake autoconf libtool make
7.编译安装
make && make install
8.映射全局命令
ln -s /home/werben/application/php7.3.11/sbin/* /usr/local/sbin/ ln -s /home/werben/application/php7.3.11/bin/* /usr/local/bin/
9.配置php.ini
#查看php.ini的位置 php -r "phpinfo();" | grep 'php.ini' #将源码中的php.ini*拷贝到php.ini的位置 cp /home/werben/pkgsrc/php-7.3.11/php.ini-* /home/werben/application/php7.3.11/lib/ #重命名php.ini文件 cp /home/werben/application/php7.3.11/lib/php.ini-production /home/werben/application/php7.3.11/lib/php.ini
10.安装目录结构
#/home/werben/pkgsrc/php-7.3.11安装目录的结构 ├── bin │ ├── pear │ ├── peardev │ ├── pecl │ ├── phar -> phar.phar │ ├── phar.phar │ ├── php │ ├── php-cgi │ ├── php-config │ ├── phpdbg │ └── phpize ├── etc │ ├── pear.conf │ ├── php-fpm.conf.default │ └── php-fpm.d ├── include │ └── php ├── lib │ ├── php │ ├── php.ini │ ├── php.ini-development │ └── php.ini-production ├── php │ ├── man │ └── php ├── sbin │ └── php-fpm └── var ├── log └── run
ps:下面将展示如何将PHP与Nginx和Apache集成。
配置PHP以与Apache一起使用
如果你将Apache用作Web服务器,请使用以下命令重新启动httpd服务,可以使用:
$ sudo systemctl restart httpd
配置PHP以与Nginx一起使用
默认情况下,PHP FPM以用户apache的身份运行,为避免权限问题,我们将用户更改为nginx,为此,请编辑相关的行,即user = nginx和group = nginx:
$ sudo nano /etc/php-fpm.d/www.conf ... user = nginx .. group = nginx
确保/var/lib/php目录具有正确的所有权:
$ chown -R root:nginx /var/lib/php
完成后,重新启动PHP FPM服务:
$ sudo systemctl restart php-fpm
接下来,编辑Nginx主机指令,并添加以下位置块,以便Nginx可以处理PHP文件:
server { # . . . other code location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
为了使新配置生效,请重新启动Nginx服务:
$ sudo systemctl restart nginx
关于“在centos8自定义目录安装php7.3的方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。