在Linux系统上从源代码安装PHP涉及多个步骤。以下是一个详细的指南,帮助你在Linux上从源代码编译和安装PHP。
在编译PHP之前,你需要安装一些必要的依赖项。这些依赖项包括编译器、库和工具。
对于基于Debian的系统(如Ubuntu):
sudo apt-get update
sudo apt-get install -y build-essential libxml2-dev libssl-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libfreetype6-dev libzip-dev libonig-dev libsqlite3-dev
对于基于RPM的系统(如CentOS、Fedora):
sudo yum groupinstall "Development Tools"
sudo yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel freetype-devel libzip-devel oniguruma-devel sqlite-devel
你可以从PHP的官方网站下载最新的PHP源代码,或者使用wget
命令直接从终端下载。
wget https://www.php.net/distributions/php-8.1.0.tar.gz
下载完成后,解压源代码包:
tar -xvzf php-8.1.0.tar.gz
cd php-8.1.0
在编译之前,你需要配置PHP的编译选项。你可以使用./configure
命令来指定安装路径、启用或禁用某些扩展等。
以下是一个基本的配置示例:
./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--enable-fpm \
--with-openssl \
--with-zlib \
--with-curl \
--with-mysqli \
--with-pdo-mysql \
--with-jpeg \
--with-freetype \
--with-zip \
--enable-mbstring \
--enable-sockets \
--enable-opcache
你可以根据需要调整这些选项。例如,如果你不需要某些扩展,可以去掉相应的--with-*
选项。
配置完成后,使用以下命令编译和安装PHP:
make
sudo make install
编译过程可能需要一些时间,具体取决于你的系统性能。
安装完成后,你需要配置PHP。首先,复制PHP的配置文件:
sudo cp php.ini-development /usr/local/php/etc/php.ini
如果你在生产环境中使用PHP,建议使用php.ini-production
:
sudo cp php.ini-production /usr/local/php/etc/php.ini
如果你启用了PHP-FPM,你需要配置它。首先,复制默认的PHP-FPM配置文件:
sudo cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
sudo cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
然后,编辑www.conf
文件以配置PHP-FPM的监听端口、用户和组等。
如果你配置了PHP-FPM,可以使用以下命令启动它:
sudo /usr/local/php/sbin/php-fpm
你可以将PHP-FPM添加到系统启动项中,以便在系统启动时自动启动。
你可以通过创建一个简单的PHP脚本来测试PHP是否安装成功。创建一个名为info.php
的文件:
echo "<?php phpinfo(); ?>" > /usr/local/php/www/info.php
然后,通过浏览器访问http://your-server-ip/info.php
,你应该能看到PHP的信息页面。
为了方便使用PHP命令行工具,你可以将PHP的可执行文件路径添加到系统的PATH
环境变量中:
echo 'export PATH="/usr/local/php/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
安装完成后,你可以删除源代码目录以释放磁盘空间:
cd ..
rm -rf php-8.1.0 php-8.1.0.tar.gz
通过以上步骤,你应该已经成功在Linux系统上从源代码编译并安装了PHP。你可以根据实际需求调整配置选项,并安装所需的扩展。