在Ubuntu下,安装PHP的源码可以分为以下步骤:
1、安装编译PHP所需的依赖包:
sudo apt-get update
sudo apt-get install -y build-essential libxml2-dev libssl-dev libbz2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libmcrypt-dev libreadline-dev libxslt-dev
2、下载并解压PHP源码:
可以在PHP的官方网站(https://www.php.net/downloads.php)下载PHP的源码包,并解压到本地目录:
cd /usr/local/src
sudo wget https://www.php.net/distributions/php-x.x.x.tar.gz
sudo tar -xvf php-x.x.x.tar.gz
3、配置编译选项:
进入PHP源码目录,运行以下命令来配置编译选项:
cd php-x.x.x
sudo ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --with-zlib --enable-mbstring --with-curl --enable-gd --with-jpeg --with-zip --with-bz2 --enable-calendar --enable-exif --enable-ftp --enable-sockets --with-xsl --enable-soap --with-gettext --with-readline --enable-opcache
这个命令的作用是根据我们的需求来配置PHP的编译选项,其中一些比较重要的选项说明如下:
–prefix=/usr/local/php:指定PHP的安装路径。
–with-config-file-path=/usr/local/php/etc:指定PHP配置文件的路径。
–with-mysqli=mysqlnd:启用MySQLi扩展。
–with-pdo-mysql=mysqlnd:启用PDO MySQL扩展。
–with-openssl:启用OpenSSL扩展。
–with-zlib:启用zlib扩展。
–enable-mbstring:启用多字节字符串扩展。
–with-curl:启用cURL扩展。
–enable-gd –with-jpeg:启用GD扩展,并支持JPEG格式。
–with-zip:启用Zip扩展。
–with-bz2:启用bzip2扩展。
–enable-calendar:启用Calendar扩展。
–enable-exif:启用Exif扩展。
–enable-ftp:启用FTP扩展。
–enable-sockets:启用Sockets扩展。
–with-xsl:启用XSL扩展。
–enable-soap:启用SOAP扩展。
–with-gettext:启用Gettext扩展。
–with-readline:启用Readline扩展。
–enable-opcache:启用Opcache扩展。
在配置过程中,如果出现configure: error: the pkg-config script could not be found,则执行下面的安装:
sudo apt-get install pkg-config
如果出现configure: error: Packge requirements (sqlite3 >= 3.7.7) were not met: No package ‘sqlite3’ found,则执行下面的安装:
sudo apt-get install libsqlite3-dev
如果出现configure: error: Packge requirements (oniguruma) were not met: No package ‘oniguruma’ found,则执行下面的安装:
sudo apt install libonig-dev
如果出现configure: error: Packge requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met: No package ‘libzip’ found,则执行下面的安装:
sudo apt install libzip-dev
configure执行成功后,显示如下:

4、编译和安装:
配置完编译选项后,依次运行以下命令来编译PHP源码并安装:
sudo make
sudo make install
这个命令会根据我们之前的编译选项来编译PHP,并将其安装到指定的目录中。

5、配置PHP:
安装完成后,我们需要进行一些配置来使PHP正常工作。首先,我们需要复制PHP的配置文件模板到配置文件目录:
sudo mkdir /usr/local/php/etc/
sudo cp php.ini-development /usr/local/php/etc/php.ini
然后,我们需要编辑这个文件,将其中的一些配置项设置为我们需要的值:
sudo nano /usr/local/php/etc/php.ini
在这个文件中,你可以修改各种配置选项,例如时区、上传文件大小限制、错误日志等。修改完成后,保存并退出编辑器。
至此,PHP安装完成,可以执行下面的命令查看版本信息:
/usr/local/php/bin/php -version
结果显示如下:

6、配置NGINX服务器:
如果你想在Nginx服务器中使用PHP,你需要安装Nginx服务器。在Ubuntu上安装Nginx和PHP后,可以按照以下步骤配置Nginx来使用PHP:
打开NGINX的配置文件:
sudo vi /etc/nginx/nginx.conf
或(随Nginx安装的不同)
sudo vi /etc/nginx/sites-available/default
nginx.conf(或sites-available/default)配置文件修改如下:
#....省略前面的
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html;
location / {
#root html;
#index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root /var/www/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include fastcgi_params;
}
}
}
7、后台运行php-cgi:
sudo /usr/local/php/bin/php-cgi -b 9000&
8、启动NGINX(如果nginx已启动,则关闭后,再启动):
sudo /usr/sbin/nginx -s stop
sudo /usr/sbin/nginx
9、编写PHP文件测试
在/var/www/html目录下编写index.php文件:
<?php
phpinfo();
?>
在浏览器中测试:
http://192.168.0.11/index.php
把上面的IP换成你Ubuntu主机的IP。