如何在UBUNTU 16.04 上安装PHP 7.0(PHP-FPM) >本文解释如何在Ubuntu 16.04 LTS(Xenial Xerus)上安装PHP 7.0(php-fpm)。在开始之前需要安装好诸如Nginx或Apache之类的http服务器。 ##1.初步步骤 首先,通过运行以下命令确保你的系统和apt包列表是最新版: >apt-get update -y && apt-get upgrade -y -y参数的意思是可以在不提示我们的情况下更新。 ##2.安装PHP 7.0 Ubuntu默认安装FastCGI Process Manager,也就是php-fpm。要安装PHP 7.0(和php7.0-fpm),需要的命令是: >apt-get install php -y 检查php7.0-fpm是否正在运行: >systemctl status php7.0-fpm 如果它没有运行,则通过以下命令启动php7.0-fpm服务: >systemctl start php7.0-fpm 设置php7.0-fpm在重启时启动: >systemctl enable php7.0-fpm ##3.配置PHP 7.0以使用Apache 2.4 本节假定你已经安装了Apache 2.4。只需很少的配置就可以让PHP 7.0和Apache 2.4正常工作。 你可以设置Apache执行文件后缀的优先级,编辑默认站点的配置文件: >vi /etc/apache2/sites-available/000-default.conf 在VirtualHost *:80块内找到这一行: >DocumentRoot / var / www / html 在它后面添加以下行,然后保存并退出: >DirectoryIndex index.php index.html **index.php和index.html的顺序决定哪一个优先。** 重新启动Apache: >systemctl restart apache2 创建一个测试index.php文件: >vi /var/www/html/index.php 粘贴下面的代码,然后保存并退出文件: ><?php echo “Hello world!”; ?> 再次在浏览器中输入服务器的IP地址,你应该看到文本“Hello world!”。而不是缺省的Apache页面。 若没有看到(显示源代码或其他不正常的情况)请校验apache是否载入PHP模块 >a2query -m php7.0 若没有载入,则执行下面的命令加载模块 >a2enmod php7.0 另外还有一种情况就是你没有安装libapache2-mod-php7.0 >apt-get install libapache2-mod-php7.0 -y 安装完成后执行前两步步骤。 最后重启apache >systemctl restart apache2 ##4.配置PHP 7.0以使用Nginx 本节假定你已经安装了Nginx。Nginx需要比Apache更多的配置才能使它和PHP 7.0一起工作。 首先,创建一个测试index.php文件: >vi /var/www/html/index.php 粘贴下面的代码,然后保存并退出文件: ><?php echo "Hello world,I'm PHP!"; ?> 现在编辑deafult Nginx配置文件: >vi/etc/nginx/sites-available/default 找到以下行: >index index.html index.htm index.nginx-debian.html; 添加index.php: >index index.php index.html index.htm index.nginx-debian.html; index.php,index.html,index.htm和index.nginx-debian.html的顺序确定哪个优先,并且由Nginx首先加载。 找到以下几行: ``` #location ~ \.php$ { # include snippets/fastcgi-php.conf; # # # With php7.0-cgi alone: # fastcgi_pass 127.0.0.1:9000; # # With php7.0-fpm: # fastcgi_pass unix:/run/php/php7.0-fpm.sock; #} ``` 修改如下: ``` location ~ \.php$ { include snippets/fastcgi-php.conf; # With php7.0-cgi alone: #fastcgi_pass 127.0.0.1:9000; # With php7.0-fpm: fastcgi_pass unix:/run/php/php7.0-fpm.sock; } ``` 保存并退出。 现在重新启动php7.0-fpm和nginx: >systemctl restart php7.0 -fpm >systemctl restart nginx 在浏览器中再次浏览到服务器的IP地址,您应该看到文字“Hello world,I'm PHP!” 而不是默认的Nginx页面。 2018-03-19 系统 展开评论