编译安装 PHP 8.1 开启 ZTS(线程安全)
下载 PHP8.1 安装包并且解压 php
wget https://www.php.net/distributions/php-8.1.5.tar.gz tar -zxvf php-8.1.5.tar.gz cd php-8.1.5
这里就是先下载然后解压,进入到目录里面准备编译安装 php。
配置 makefile
./configure --prefix=/usr/local/php8.1 --with-config-file-path=/usr/local/php8.1 --with-config-file-scan-dir=/usr/local/php8.1/etc/php.d --enable-fastcgi --disable-fileinfo --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-mbstring --enable-ftp --with-gd --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-pear --with-gettext --enable-calendar --with-openssl --with-mcrypt --enable-zts
这里就是配置一下你要安装 php 的 makefile
然后等下才能顺利安装,需要注意的是上面的指令是有开 ZTS 线程安全 的,如果不需要开 ZTS 的话把 --enable-zts
删掉就行。如果这里卡住了通常都是一些包没有安装好或者太旧了,如果没安装的话可能需要百度一下看一下那个包的名字,太旧了的话建议就是运行这个指令之前先运行一次:文章源自爱尚资源教程网-https://www.23jcw.net/1163.html
sudo apt-get upgrade
make 安装 php
sudo make && make install
这里就是需要最长时间等待的地方了,有时候会安装到一般然后断掉,需要详细判断原因,我安装的适合碰到的问题就是内存太小了,编译的时候跑光了文章源自爱尚资源教程网-https://www.23jcw.net/1163.html
复制 php.ini 文件并且添加 php 程序档案软连接
cp ./php.ini-production /usr/local/php8.1/etc/php.ini ln -s /usr/local/php8.1/bin/php /usr/bin/php
第一个指令就是复制我们的 php.ini
文件到指定的 php 配置目录下面,第二个指令就是创建一个软连接把 php 的执行档案 /usr/local/php8.1/bin/php
到我们的运行目录 /usr/bin/php
下,当然我们也可以通过添加 PATH
的形式实现,但是这里就不多说了。文章源自爱尚资源教程网-https://www.23jcw.net/1163.html
检查 PHP 版本以及是否有开启 ZTS
php -v # 查看 PHP 版本 php -i | grep Thread
第一个就是检查 PHP 版本的指令,如果成功的话会看到下面的 php 头信息文章源自爱尚资源教程网-https://www.23jcw.net/1163.html
PHP 8.1.5 (cli) (built: Apr 27 2022 09:11:27) (ZTS) Copyright (c) The PHP Group Zend Engine v4.1.5, Copyright (c) Zend Technologies
第二个就是查看是否有开启 ZTS 线程安全的,如果有的话会看到下面的 php 输出信息文章源自爱尚资源教程网-https://www.23jcw.net/1163.html
Thread Safety => enabled Thread API => POSIX Threads
如果没有开启的话应该就是文章源自爱尚资源教程网-https://www.23jcw.net/1163.html
Thread Safety => disabled文章源自爱尚资源教程网-https://www.23jcw.net/1163.html文章源自爱尚资源教程网-https://www.23jcw.net/1163.html