Ubuntu下源码安装PHP

在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。

发表评论

滚动至顶部