Linux操作系統由于其安全、穩定、可靠的特性已經成為了互聯網行業中的主流操作系統。而開源的php語言也是互聯網行業中使用最廣泛的語言之一。在使用Linux操作系統時,我們經常會需要安裝多個php版本,來滿足不同的應用需求。下面我們來詳細了解一下Linux下多php的實現方法以及應用
第一種實現多php環境的方法是通過編譯源碼安裝多個php。源碼安裝的好處在于可以選擇php的編譯參數,以滿足不同的應用需求。
<code> $ wget http://php.net/get/php-x.x.x.tar.gz/from/this/mirror $ tar zxvf php-x.x.x.tar.gz $ cd php-x.x.x $ ./configure --prefix=/usr/local/php5 --with-openssl --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir $ make && make install </code>
上面是通過編譯源碼安裝php5,通過修改prefix參數可以安裝不同版本的php
第二種實現多php環境的方法是通過yum或者apt-get安裝不同版本的php。這種方式的好處是方便,但是不能滿足需要定制參數的需求。
<code> $ yum install php5 $ yum install php7 </code>
上面的代碼演示了如何通過yum安裝php5和php7
使用多php環境時,需要在nginx或者apache中配置php執行的路徑
<code> server { listen 80; server_name example.com; root /home/webroot; index index.php; location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PHP_FCGI_MAX_REQUESTS 1000; include fastcgi_params; } location ~ ^/(php5.6|php7.0) { fastcgi_pass 127.0.0.1:${php_port}; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PHP_FCGI_MAX_REQUESTS 1000; include fastcgi_params; } } </code>
上面的代碼演示了如何使用nginx配置多php環境,其中location中的php5.6和php7.0分別指定了不同版本的php執行路徑
總結
在Linux系統中需要安裝多個版本的php時,我們可以通過編譯源碼或者使用yum安裝的方式進行實現。并且需要在nginx或者apache中配置不同版本php的執行路徑,以便后續使用。