Ubuntu下安装LNMP之php7的安装并配置Nginx支持php及卸载php
据了解,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 ) |
配置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的更多相关文章
- Ubuntu下使用Deepin-wine的移植版安装qq微信等
title: Ubuntu下使用Deepin-wine的移植版安装qq微信等 toc: false date: 2018-09-18 16:12:49 categories: methods tags ...
- Linux下安装php环境并且配置Nginx支持php-fpm模块[www]
Linux下安装php环境并且配置Nginx支持php-fpm模块 http://www.cnblogs.com/freeweb/p/5425554.html 5分钟搭建 nginx +php --- ...
- LNMP搭建04 -- 配置Nginx支持PHP
首先建立存放网页文件的目录,执行 mkdri /usr/local/server/www 然后进入到该目录中 cd /usr/local/server/www 然后创建一个测试文件: phpinfo ...
- centos下配置nginx支持php
添加nginx 默认主页index.php vim .../etc/nginx/conf.d/default.conf location / { root /usr/share/nginx/htm ...
- Ubuntu --- 安装lnmp(php7.0)
1.安装nginx sudo apt-get install nginx # 安装 sudo vim /etc/nginx/sites-enabled/default # 修改配置文件 sudo ng ...
- Ubuntu下PHP+MySQL+Apache+PHPStorm的安装和配置
粘贴自:https://www.jianshu.com/p/a6a0d2a29591 1.Apache的安装: $ sudo apt-get update $ sudo apt-get install ...
- 阿里云ECS/Ubuntu下JDK、Tomcat、MySQL安装记录
今天六一儿童节,然后... ... ... ... 然后就是父亲节呀孩子们!!! ———————————————————————割———————————————————————— 同事需要JDK.To ...
- ubuntu下搭建nfs,tftp,安装qt等一些基本的启动bootloader前的服务
之前做三星的6410是在红帽下做的,现在公司给了个TI的AM3359的开发板,开发环境是ubuntu10-04.这周经过半天的研究对比,终于算是搭好tftp下载的一些服务了. [防火墙] sudo u ...
- Ubuntu下伪分布式模式Hadoop的安装及配置
1.Hadoop运行模式Hadoop有三种运行模式,分别如下:单机(非分布式)模式伪分布式(用不同进程模仿分布式运行中的各类节点)模式完全分布式模式注:前两种可以在单机运行,最后一种用于真实的集群环境 ...
随机推荐
- scala成长之路(2)对象和类
scala提供了一种特殊的定义单例的方法:object关键字 scala> object Shabi{ | val age = 0 | val name = "shabi" ...
- QP之QEP原理
1.QP简介: 量子平台(Quantum Platform, 简称QP)是一个用于实时嵌入式系统的软件框架,QP是轻量级的.开源的.基于层次式状态机的.事件驱动的平台. QP包括事件处理器(QEP). ...
- Python入门学习笔记4:他人的博客及他人的学习思路
看其他人的学习笔记,可以保证自己不走弯路.并且一举两得,即学知识又学方法! 廖雪峰:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958 ...
- ruby 类库组成
一. 核心类库: 二.标准类库: 文本 base64.rb 处理Base64编码的模块 csv.rb CSV(Comma Separated Values)库 ruby 1.8 特性 ...
- [Cracking the Coding Interview] 4.3 List of Depths
Given a binary tree, design an algorithm which creates a linked list of all the nodes at each depth. ...
- CUBLAS基础实验
一.概述 最近在试图进行cuda并行编程,目标是编写一段矩阵计算代码,将计算结果存储进入GPU的缓冲区当中,并在达到某些要求后强制刷新缓冲区,取得计算结果. 但是考虑时间紧任务重的状况和实际的性能要求 ...
- Android Studio modify language level to Java 8
If you need use lambda, should modify language level File -> Project Structure -> app -> Pr ...
- Java中的IO流体系
Java为我们提供了多种多样的IO流,我们可以根据不同的功能及性能要求挑选合适的IO流,如图10-7所示,为Java中IO流类的体系. 注:这里只列出常用的类,详情可以参考JDK API文档.粗体标注 ...
- jmeter处理响应结果中文乱码
1. 在线程下面添加后置处理器BeanShell PostProcessor,增加script:prev.setDataEncoding("UTF-8"); 2. 在jmeter. ...
- 【廖雪峰老师python教程】——模块
使用模块 任何模块代码的第一个字符串都被视为模块的文档注释: 使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名: 当我们在命令行运行模块文件时,Python解释器把 ...