博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 编译环境 之 编译安装世界上最好的语言PHP
阅读量:3950 次
发布时间:2019-05-24

本文共 4484 字,大约阅读时间需要 14 分钟。

在这里插入图片描述

文章目录


前言

本文讲述是php在Linux环境下编译安装.


提示:以下是本篇文章正文内容,下面案例可供参考

一、为什么要在Linux安装php?

首先我们日常开发分为Wamp Wnmp Lamp Lnmp 这几种环境。首先先搞懂这几个字母代表的涵义。

1:W=Windows

一般指Windows操作系统也就是所谓的本地开发

2:A=Apache

Apache(音译为阿帕奇)是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广  泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中

3:N=Nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务

4:L=Linux

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。

5:M=Mysql

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

6:P=PHP

PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页

目前详细大家主要选择的也是Lnmp进行开发了。至于为什么在Linux上面开发好处有几点是本地开发做不到的,作为一个开发工程师是必备的

1:首先大家都知道的一点在Linux上运行是比在Windows上效率要高的。
2:安全方面也是比本地要高很多
3:还有一点就是线上访问项目肯定也是在Linux

二、安装步骤

1.下载安装包

(示例):

1、php官网:找到对应位置
下载

下载对应版本

2.下载完成解压:tar xvf php-7.3.5.tar.gz

(示例):

1:复制链接地址:下载
在这里插入图片描述
2:解压
在这里插入图片描述

3.编译

1: 编译命令

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-bcmath=shared --with-gettext=shared --with-iconv --enable-ftp=shared --enable-mbstring=shared --enable-sockets=shared --enable-zip --enable-soap=shared --with-openssl --with-zlib --with-curl=shared --with-gd=shared --with-jpeg-dir --with-png-dir --with-freetype-dir  --with-mhash=shared --enable-opcache  --with-mysqli=mysqlnd --with-pdo-mysql=shared,mysqlnd --without-pear --with-libdir=lib64

在这里插入图片描述

2:编译完成后:make && make install
在这里插入图片描述

4. 添加环境变量

1:Make完成后,把php.ini cp 到php/etc/php.ini

cp php.ini-development /usr/local/php/etc/php.ini

在这里插入图片描述

2:修改环境变量PATH

vim /etc/profile

在这里插入图片描述

添加进去:PATH=$PATH:/usr/local/php/bin:/usr/local/php/sbin:/usr/local/redis/bin

在这里插入图片描述

3:修改PHP-FPM配置文件
进入:cd /usr/local/php/etc
在这里插入图片描述
(2)重命名: mv php-fpm.conf.default php-fpm.conf
在这里插入图片描述
(3)进入:cd php-fpm.d/ 文件夹

在这里插入图片描述

(4)重命名: mv www.conf.default www.conf

在这里插入图片描述

5:最后重启php

/usr/local/php/sbin/php-fpm

5.编译报错解析

错误:pkg-config

解决办法:apt install pkg-config

错误:configure: error: libxml2 not found. Please check your libxml2 installation.

解决办法:apt install libxml2-dev

错误:configure: error: Cannot find OpenSSL’s <evp.h>

解决办法:apt install libssl-dev

错误:checking for cURL 7.15.5 or greater… configure: error: cURL version 7.15.5 or later is required to compile php with cURL support

解决办法:下载最新 curl 编译安装 https://curl.haxx.se/download/curl-7.64.1.tar.gz
./configure
make && make install

错误:configure: error: jpeglib.h not found.

解决办法:apt install libjpeg-dev

错误:configure: error: png.h not found.

解决办法:apt install libpng-dev

错误:configure: error: freetype-config not found

解决办法:apt install libfreetype6-dev

错误:configure: error: Please reinstall the libzip distribution

解决办法:下载libzip https://libzip.org/download/libzip-1.5.2.tar.gz
mkdir build
cd build
cmake … (可能需要提前安装cmake)
make
make test
make install

2:centOS:

1: php里面执行
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-bcmath=shared --with-gettext=shared --with-iconv --enable-ftp=shared --enable-mbstring=shared --enable-sockets=shared --enable-zip --enable-soap=shared --with-openssl --with-zlib --with-curl=shared --with-gd=shared --with-jpeg-dir --with-png-dir --with-freetype-dir --with-mhash=shared --enable-opcache --with-mysqli=mysqlnd --with-pdo-mysql=shared,mysqlnd --without-pear --with-libdir=lib64
2:下载需要的东西
yum install -y make cmake gcc gcc-c++ autoconf automake libpng-devel libjpeg-devel zlib libxml2-devel ncurses-devel bison libtool-ltdl-devel libiconv libmcrypt mhash mcrypt pcre-devel openssl-devel freetype-devel libcurl-devel
3:cmke安装
(1)移除旧版本:
  yum remove cmake
下载新版本
Wget
https://cmake.org/files/v3.6/cmake-3.6.0-Linux-x86_64.tar.gz
2、解压:tar -zxvf cmake-3.6.0-Linux-x86_64.tar.gz
    注意:这个压缩包不是源码包,解压后直接用。
  3、增加环境变量,使其成为全局变量:
    vim /etc/profile
    在文件末尾处增加以下代码
    export PATH=$PATH:/soft/cmake-3.6.0-Linux-x86_64/bin
    注意:写自己刚安装cmake的bin的路径
    使修改的文件生效
    source /etc/profile
  4、查看环境变量:
    echo $PATH
  5、检查cmake版本:
    cmake --version

总结

提示:以上是Linux编译安装php的步骤希望对你们有帮助。后面会连续出 MYSQL Nginx 等编译安装步骤。

往期文章:

转载地址:http://adzzi.baihongyu.com/

你可能感兴趣的文章
拷贝代码时没有仔细检查,导致误修改了函数参数
查看>>
MySQL批量导入数据SQL语句(CSV数据文件格式)
查看>>
ADO连接Oracle
查看>>
遍历Windows系统中所有进程的名字(*.exe)
查看>>
进程看门狗
查看>>
线程看门狗
查看>>
调试代码的宏定义
查看>>
创建、重命名文件
查看>>
文件大小保护
查看>>
删除指定目录下所有文件及目录
查看>>
XDR-从文件空间解码整数
查看>>
XDR-.x文件的简单使用
查看>>
XDR-枚举的试用
查看>>
使用CppSQLite3访问SQLite数据库
查看>>
第一个boost程序---timer的使用
查看>>
使用boost asio库实现字节数可控的CS通信
查看>>
linux下串口编程
查看>>
boot asio 非阻塞同步编程---非阻塞的accept和receive。
查看>>
利用ADOX、ADO操纵MDB文件(ACCESS)
查看>>
使用ADO操作MDB,关注数据类型
查看>>