据了解,php7是比之前的版本性能快很多的。http://php.net/get/php-7.2.2.tar.gz/from/a/mirror

安装前也可提前将相关依赖库安装好,或者在安装php时若安装失败,按照提示安装好所需要的依赖库即可。

安装Php

apt-get 一键安装

1 sudo apt-get update
2 sudo apt-get install php

手动编译安装

1 # 下载最新版本
2 wget http://php.net/distributions/php-7.2.2.tar.gz
3 # 解压
4 tar -zxvf php-7.2.2.tar.gz
5 # 进入解压目录
6 cd php-7.2.2
7 # 配置
8 sudo ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm
9 # 编译php
10 sudo make
11 #安装php
12 sudo make install
13 # 修改配置文件
14 cd /usr/local/php/etc
15 sudo cp php-fpm.conf.default php-fpm.conf
16 cd /usr/local/php/etc/php-fpm.d
17 sudo cp www.conf.default www.conf
18 # 修改www.conf中的所属用户组及用户
19 user=www
20 group=www
21 # 注意: 如果www用户不存在,则先添加用户www用户
22 sudo groupadd www
23 sudo useradd -g www www
24 # 查看php-fpm进程
25 ps -ef|grep php-fpm
26 # 配置php-fpm开机自启动
27 sudo /usr/sbin/chkconfig php-fpm on

注意:以上sudo可加可不加,仅在权限不足时临时获得根用户权限。可查看Ubuntu下安装LNMP之nginx的安装

当使用chkconfig时,ubuntu会提示“找不到该命令”,此时可参考Ubuntu 14.04 安装 chkconfig 服务管理程序

php-fpm常用命令

启动php-fpm

1 sudo /usr/local/php/sbin/php-fpm
2 注意:若是已经将php-fpm加入系统服务,可不用输入那么长的地址,具体步骤后续讨论,和shell相关。

停止php-fpm

1 sudo pkill php-fpm

查看Php版本

1 sudo /usr/local/php/sbin/php -v
 2

PHP 7.2.2 (cli) (built: Feb 22 2018 15:43:13) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

配置Nginx支持php(基础配置)

找到如下内容:

location / {
  root html;
  index index.html index.htm index.php; #(在其后加上index.php)
}

然后再找到如下内容:

#location ~ \.php$ {
#  root html;
#  fastcgi_pass 127.0.0.1:9000;
#  fastcgi_index index.php;
#  fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 
#  include fastcgi_params;
#}

将其前面#删除,即解除注释,并将/scripts更改为$document_root

$document_root 代表当前请求在root指令中指定的值

也可将root目录更改到你想要的目录

此时,在html中新建文件,index.php,输入如下内容:

<?php

  phpinfo();

然后在浏览器中输入http://127.0.0.1/index.php。如果出现php的信息即配置正确。

卸载php

卸载其实相当容易,只要记住在Linux中,一切皆文件即可。所以,我们可以像在windows上删除快捷方式那样直接找到安装php的目录将其删除即可。例如,我安装的目录是/usr/local/php,只要将该目录删除,并kill掉当前运行的php-fpm进程即可。

安装过程中遇到的问题

.configure进行编译时,提示 error: xml2-config not found. Please check your libxml2 installation.

这是由于系统缺少PHP所需的库文件导致的,根据提示,进行如下操作:

 sudo apt-get install libxml2(按Tab键)

将会看到如下信息:

 libxml2 libxml2-dev libxml2-headers libxml2-utils

这里需要安装的是libxml2-dev软件包,操作如下:

sudo apt-get install libxml2-dev

库文件安装完成后,重新配置PHP

相关说明:

fmp的配置文件是xml格式的,用了libxml对配置文件进行解析,所以需要安装libxml2的开发文件;

一般这种命名规则: lib, lib-dev, 前一个是程序运行时需要的库, 后一个是编译源码时需要的库.

Ubuntu下安装LNMP之php7的安装并配置Nginx支持php及卸载php的更多相关文章

  1. Ubuntu下使用Deepin-wine的移植版安装qq微信等

    title: Ubuntu下使用Deepin-wine的移植版安装qq微信等 toc: false date: 2018-09-18 16:12:49 categories: methods tags ...

  2. Linux下安装php环境并且配置Nginx支持php-fpm模块[www]

    Linux下安装php环境并且配置Nginx支持php-fpm模块 http://www.cnblogs.com/freeweb/p/5425554.html 5分钟搭建 nginx +php --- ...

  3. LNMP搭建04 -- 配置Nginx支持PHP

    首先建立存放网页文件的目录,执行 mkdri /usr/local/server/www  然后进入到该目录中 cd /usr/local/server/www 然后创建一个测试文件: phpinfo ...

  4. centos下配置nginx支持php

    添加nginx 默认主页index.php vim .../etc/nginx/conf.d/default.conf location / { root   /usr/share/nginx/htm ...

  5. Ubuntu --- 安装lnmp(php7.0)

    1.安装nginx sudo apt-get install nginx # 安装 sudo vim /etc/nginx/sites-enabled/default # 修改配置文件 sudo ng ...

  6. Ubuntu下PHP+MySQL+Apache+PHPStorm的安装和配置

    粘贴自:https://www.jianshu.com/p/a6a0d2a29591 1.Apache的安装: $ sudo apt-get update $ sudo apt-get install ...

  7. 阿里云ECS/Ubuntu下JDK、Tomcat、MySQL安装记录

    今天六一儿童节,然后... ... ... ... 然后就是父亲节呀孩子们!!! ———————————————————————割———————————————————————— 同事需要JDK.To ...

  8. ubuntu下搭建nfs,tftp,安装qt等一些基本的启动bootloader前的服务

    之前做三星的6410是在红帽下做的,现在公司给了个TI的AM3359的开发板,开发环境是ubuntu10-04.这周经过半天的研究对比,终于算是搭好tftp下载的一些服务了. [防火墙] sudo u ...

  9. Ubuntu下伪分布式模式Hadoop的安装及配置

    1.Hadoop运行模式Hadoop有三种运行模式,分别如下:单机(非分布式)模式伪分布式(用不同进程模仿分布式运行中的各类节点)模式完全分布式模式注:前两种可以在单机运行,最后一种用于真实的集群环境 ...

随机推荐

  1. Scala语法(三)

    模式匹配 1)match val a = 1 val b=a match { *// a match { }返回值赋予变量 b case 1 => "red" case 2 ...

  2. 初识python 面向对象

    what the f**k!!这个知识点学不好的最大元凶就是,我还单身??? python基础(四): 面向对象的三个特点: 封装,继承,多态 类: 对象是面向对象编程的核心,在使用对象的过程中,为了 ...

  3. Python3 使用基本循环实现多级目录(思路)

    一.多级目录设计: 1. 通过循环的方式显示菜单和进入菜单 2. 设置标志位以提供回退上一层菜单 2. 设置标志位以提供退出程序 二.注意要点: 1. 菜单样式,层次关系不要弄混乱 2. 当输入错误时 ...

  4. YSZOJ:#247. [福利]可持久化线段树 (最适合可持久化线段树入门)

    题目链接:https://syzoj.com/problem/247 解题心得: 可持久化线段树其实就是一个线段树功能的加强版,加强在哪里呢?那就是如果一颗普通的线段树多次修改之后还能知道最开始的线段 ...

  5. COURSES POJ1469(模板)

    Description Consider a group of N students and P courses. Each student visits zero, one or more than ...

  6. Ubuntn14.04安装MATLAB2015b

    一部分转载自:CSDN ,其他结合自己电脑环境配置,旨做备份和记录,同时也提供一个参考. 安装环境: linux Ubuntu14.04 (x64) 软件包下载地址: Matlab R2015b_gl ...

  7. easyui 验证动态添加和删除问题

    $.extend($.fn.validatebox.methods, { remove: function(jq, newposition){ return jq.each(function(){ $ ...

  8. ORB-SLAM 代码笔记(三)tracking原理

    ORB视觉里程计主体在tracking线程中

  9. DDD领域驱动设计基本理论知识总结(转)

    领域驱动设计之领域模型 为什么建立一个领域模型是重要的 领域通用语言(UBIQUITOUS LANGUAGE) 将领域模型转换为代码实现的最佳实践 领域建模时思考问题的角度 领域驱动设计的经典分层架构 ...

  10. 解决灰色shader与mask冲突的方案

    Shader "Custom/Opaque" { Properties { [PerRendererData] _MainTex ("Sprite Texture&quo ...