Ubuntu 16.04 源码编译安装PHP7.2.23详细过程
从官网下载源码包 https://www.php.net/downloads.php
打开虚拟机,Ctrl + Alt + T 打开终端 sudo su可以切换超级管理员,不用每次输入命令都带sudo。
复制下载链接
#cd /usr/local/src/
#sudo wget https://www.php.net/distributions/php-7.2.23.tar.gz
执行以下命令进行解压
sudo tar -zxvf php-7.2.23.tar.gz
cd php-7.2.23/
安装依赖
sudo apt update
sudo apt install gcc
sudo apt install make
sudo apt install openssl
sudo apt install curl
sudo apt install libbz2-dev
sudo apt install libxml2-dev
sudo apt install libjpeg-dev
sudo apt install libpng-dev
sudo apt install libfreetype6-dev
sudo apt install libzip-dev
sudo apt install libssl-dev
预编译
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl-dir=/usr/bin/curl --enable-mbregex --enable-mbstring --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts
直到看到这个界面, 预编译成功
编译并安装 ,参数-j指定编译线程数量来进行多线程编译,不想等着就加上咯
sudo make -j4
看到这个就完成编译了
执行以下命令进行安装
sudo make install
安装完成以及输入命令
/usr/local/php/bin/php -v
查看本版本
成功从源代码编译安装!!!!
最后复制一个源码编译出来的配置文件
sudo cp php.ini-development /usr/local/php/etc/php.ini
本来 想分开写的想想还是算了
配置php-fpm命令:
cd /usr/local/etc/ cp php-fpm.conf.default php-fpm.conf
cd php-fpm.d cp www.conf.default www.conf
groupadd www
useradd -g www www
启动
/usr/local/php/sbin/php-fpm
没有消息就是好消息
验证
ps -ef |grep php-fpm
Nginx解析PHP多站点配置
cd /usr/local/nginx/conf
编辑配置文件为多文件
vim nginx.conf
把nginx.conf里面server{}内的注释掉,再引入以下文件
保存并关闭文件
:wq
新建文件夹
mkdir vhosts
进入目录
cd vhosts/
新建配置文件,建议文件名有辨识度,一个文件一个站点
vim 1.com.conf
配置文件内容
server {
listen 801; # 监听端口
server_name 127.0.0.1; # 站点域名
root /wwwroot/1.php; # 站点根目录
index index.html index.htm index.php; # 默认导航页
location / {
index index.html index.htm index.php;
if (-f $request_filename/index.html){
rewrite (.) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
PHP配置
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME documentrootdocument_rootdocumentrootfastcgi_script_name;
include fastcgi_params;
}
}
保存并关闭文件
:wq
重启
cd /usr/local/nginx
./sbin/nginx -s reload
https://www.centos.bz/2019/06/ubuntu-18-04-%E6%BA%90%E7%A0%81%E7%BC%96%E8%AF%91%E5%AE%89%E8%A3%85php7-3-5%E8%AF%A6%E7%BB%86%E8%BF%87%E7%A8%8B/
Ubuntu 16.04 源码编译安装PHP7.2.23详细过程相关推荐
- Ubuntu 16.04源码编译安装Apache 2.4.25教程
这篇文章主要为大家详细介绍了Ubuntu 16.04源码编译安装Apache 2.4.25,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文为大家介绍了Ubuntu 16.04源码编译安装Apa ...
- Ubuntu 16.04 源码编译安装 uhd gnuradio
Ubuntu 16.04 源码编译安装 uhd & gnuradio 环境介绍 UHD安装 1 安装依赖 2 编译 3 测试安装结果 4 配置 USB gnuradio安装 1 安装依赖 2 ...
- Ubuntu 16.04 源码编译安装GPU tensorflow(二)
如前一篇在1.4.0版本的Tensorflow上安裝Tensorflow Object Detection API,在验证测试时出現serialized_options=None问题.需安装高版本Te ...
- Ubuntu 16.04源码编译安装nginx 1.10.0
一.下载相关的依赖库 pcre 下载地址 http://120.52.73.43/jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.t ...
- Anaconda Python3.6 OpenCV4.1.0 Ubuntu 16.04源码编译
Anaconda Python3.6 OpenCV4.1.0 Ubuntu 16.04源码编译 转载于:https://blog.csdn.net/phdsky/article/details/782 ...
- opencv4.0在linux下编译,Ubuntu 18.04源码编译安装OpenCV 4.0步骤
Ubuntu 18.04下标准常规安装方法安装的OpenCV版本比较低,想尝鲜使用4.0版本,只好源码安装. 安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 108 ...
- 【已解决】ubuntu 16.04 源码编译opencv4.5.1 报错 “../../lib/libopencv_imgcodecs.so.4.5.0: undefined reference t”
源码编译opencv可参考教程:在ubuntu下安装opencv4.1.0详细步骤https://blog.csdn.net/weixin_44003563/article/details/90404 ...
- ubuntu 编译php5.6,Ubuntu 16.04 源码编译 PHP5.6
源码编译PHP5.6 //更新依赖 sudo apt-get update sudo apt-get install build-essential //安装依赖 sudo apt-get insta ...
- OpenCPN + Ubuntu 18.04 源码编译 + Codeblocks 调试 + wxFormBuilder 安装
OpenCPN + Ubuntu 18.04 源码编译 文章目录 一.参考资料 二.源码编译流程 三.利用 IDE 编译 四.利用 IDE 调试 四.测试界面开发工具 一.参考资料 OpenCPN - ...
最新文章
- 微服务架构:注册中心 ZooKeeper、Eureka、Consul 、Nacos 对比!
- pyBoard 基于MicroPython开发STM32FXX单片机
- LINQ To SQL 语法及实例大全
- C/C++中extern关键字详解与应用
- 从JDK9的Flow接口说起
- linux lsm 程序加载钩函数,LSM在Linux中的实现方式
- x64 stack walking、调用约定、函数参数识别
- CF Round410 D. Mike and distribution
- 《操作系统真象还原》-阅读笔记(中)
- Java二维数组谷电,java二维数组遍历的2种代码
- 基于javaSwing+文本存储的学生信息管理系统设计实现
- 【Flink】Unable to retrieve any partitions with KafkaTopicsDescriptor: Fixed Topics ([xxx)]
- 短信猫前台群发短信的示例程序
- swing的几种布局
- 盘点各专业到古代都能干些啥
- 一些高阶矩的介绍,峰度和偏度
- 比Siri更厉害的个人助理Viv 能否一统江湖?
- iOS判断当前设备机型 (包含至iPhone XS Max)
- wps指定路径不存在怎么办_wps指定路径不存在怎么办_十万人都不知道键盘上 F1~F12 的作用,你肯定想不到......
- 谷歌浏览器Chrome错误代码:ERR_CONNECTION_ABORTED
热门文章
- linux如何压缩磁盘,Linux初级运维(十二)——磁盘及文件系统管理
- 2019日历全年一张_蒙太奇手帐丨2019品牌日历合集,手帐素材最佳选择
- LTE学习:传输块大小的计算
- java实现格拉布斯准则_格拉布斯准则(java代码)
- 在手机上写python_牛逼啊!一个随时随地写Python代码的神器
- 行为型模式——状态模式(十一)
- 如何用vue实现模态框组件
- Bzoj4870 [SXOI2017]组合数问题
- Aspose.Slides for Java 3.0 发布
- 兔子未来的方向在哪里