首页 > 系统相关 >linux安装PHP5.6.30

linux安装PHP5.6.30

时间:2023-01-06 10:34:19浏览次数:62  
标签:php -- 30 devel usr linux PHP5.6 root localhost

原文链接:https://blog.csdn.net/m0_55116875/article/details/121981413

前言:当搭建PHP项目时,如果在搭建环境时缺少freetype,会导致访问nginx页面时,登录界面验证码无法成功刷新出等情况,如果缺少jpeg,则会导致nginx页面中的JPEG图片无法成功刷新,对此下面这个方案解决了以上问题。

1. 下载所需的环境

yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel jemalloc jemalloc-devel libpng libpng-devel libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel

2.安装freetype

[root@localhost ~]# cd /usr/local/src/

[root@localhost ~]# wget http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.gz

[root@localhost ~]# tar -zxvf freetype-2.7.1.tar.gz

[root@localhost ~]# cd freetype-2.7.1

[root@localhost freetype-2.7.1]# ./configure --prefix=/usr/local/freetype (指定将软件安装到/usr/local/freetype目录下)

[root@localhost freetype-2.7.1]# make && make install (会在/usr/local/freetype下生成四个文件即代表成功)

3.安装jpeg

[root@localhost ~]# cd /usr/local/src/

[root@localhost src]# wget http://www.ijg.org/files/jpegsrc.v8b.tar.gz

[root@localhost src]# tar -zxvf jpegsrc.v8b.tar.gz

[root@localhost src]# cd jpeg-8b

[root@localhost jpeg-8b]# ./configure --prefix=/usr/local/jpeg --enable-shared --enable-static (指定将软件安装在/usr/local/jpeg)

[root@localhost jpeg-8b]# make && make install (会在/usr/local/jpeg下生成四个文件即代表成功)

4.安装php

[root@localhost ~]# cd /usr/local/src/

[root@localhost src]# wget http://cn2.php.net/distributions/php-5.6.30.tar.gz

[root@localhost src]# tar -xf php-5.6.30.tar.gz

[root@localhost src]# cd php-5.6.30

[root@localhost php-5.6.30]# groupadd www (创建用户)

[root@localhost php-5.6.30]# useradd -g www -s /sbin/nologin www (指定登陆shell)

[root@localhost php-5.6.30]# ./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--enable-inline-optimization --disable-debug \
--disable-rpath --enable-shared --enable-opcache \
--enable-fpm --with-fpm-user=www \
--with-fpm-group=www \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gettext \
--enable-mbstring \
--with-iconv \
--with-mcrypt \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-soap \
--with-libxml-dir \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--with-curl --with-zlib \
--enable-zip \
--with-bz2 \
--with-readline \
--with-gd \
--with-freetype-dir=/usr/local/freetype \
--with-jpeg-dir=/usr/local/jpeg/lib (注意是/usr/local/jpeg/lib 网上的答案都是/usr/local/jpeg/最后会提示GD库安装失败!!!)

[root@localhost php-5.6.30]# make -j 4 && make install

5.配置文件

#配置文件
cp php.ini-development /usr/local/php/etc/php.ini

#php-fpm 服务
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm

chkconfig --add php-fpm
chkconfig on php-fpm
service php-fpm start

6.配置环境变量

# vim /etc/profile
PATH=$PATH:/usr/local/php/bin
export PATH
# source /etc/profile

7.验证安装是否成功

[root@localhost src]# php -v
PHP 5.6.30 (cli) (built: Dec 12 2021 01:49:28)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

8.验证GD库有无freetype和jpeg

可通过修改nginx的配置文件来验证

server {
listen 80;
server_name 47.183.222.111;

access_log /data/wwwlog/atp.g-cloud.io-access.log main;
error_log /data/wwwlog/atp.g-cloud.io-error.log;

location / {
root html;
index index.php index.html index.htm; (加入index.php)
}


location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}

}

8.1 在/usr/share/nginx/html下创建一个index.php文件并写入

<?php
phpinfo();
?>

9.浏览器验证

http://ip/index.php

 

 

 

 

 

 

即代表安装成功!!!

Linux 6 下编译安装 PHP 5.6实例详解

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP以其开发源代码,免费,快捷,跨平台,高效,面向对象,强大的动态图像创建等功能深受广大开发者的喜爱。本文描述基于CentOS 6.7下编译安装PHP 5.6.9,同样也适用于CentOS 7下安装。

一、相关依赖包安装

1、演示环境


# more /etc/redhat-release 
CentOS release 6.7 (Final)

2、扩展支持(mcrypt、mhash扩展和libevent)
如果想让编译的php支持mcrypt、mhash扩展和libevent,需要安装以下包
    libmcrypt
    libmcrypt-devel
    mhash
    mhash-devel

说明:
mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。
mhash是基于离散数学原理的不可逆向的php加密方式扩展库,其在默认情况下不开启。
mhash的可以用于创建校验数值,消息摘要,消息认证码,以及无需原文的关键信息保存(如密码)等。

centos源不能安装libmcrypt-devel,由于版权的原因没有自带mcrypt的包
可以使用第三方源,这样还可以使用yum来安装
安装第三方yum源
    # wget http://www.atomicorp.com/installers/atomic
    # sh ./atomic
使用yum命令安装
    # yum install php-mcrypt libmcrypt libmcrypt-devel mhash mhash-devel

3、libevent相关包
可以根据需要安装libevent,系统一般会自带libevent,但版本有些低。因此可以升级安装如下两个rpm包。
    # yum install libevent libevent-devel

说明:
libevent是一个异步事件通知库文件,其API提供了在某文件描述上发生某事件时或其超时时执行回调函数的机制
它主要用来替换事件驱动的网络服务器上的event loop机制。
目前来说, libevent支持/dev/poll、kqueue、select、poll、epoll及Solaris的event ports。

4、支持xml的相关包
支持xml的rpm包
bzip2 是一个基于Burrows-Wheeler 变换的无损压缩软件能够高效的完成文件数据的压缩
libcurl主要功能就是用不同的协议连接和沟通不同的服务器,也就是相当封装了的sockPHP 
libcurl允许你用不同的协议连接和沟通不同的服务器
    # yum install libxml2 libxml2-devel bzip2-devel libcurl-devel

5、图形相关的rpm包
通常对应的错误提示:JIS-mapped Japanese font support in GD
    # yum install libjpeg-devel libpng-devel freetype-devel

标签:php,--,30,devel,usr,linux,PHP5.6,root,localhost
From: https://www.cnblogs.com/wjsqqj/p/17029723.html

相关文章

  • linux定时任务
    1.Crontab命令文件保存在/var/spool/cron下crontab[-u<用户名称>][配置文件]或crontab{-l|-r|-e}-u#<用户名称>是指设定指定<用户名称>的定时任务,这个......
  • 【230106-5】抛物线交X轴于A(4,0),C(-1,0),交Y轴于B(0,3). 1)求抛物线解析式 2)点P是
    ......
  • 《DFZU2EG_4EV MPSoC之嵌入式Linux开发指南》第四章 开发环境搭建​
    开发环境搭建​要进行ZYNQ开发肯定要先搭建好开发环境,我们在开始学习STM32的时候肯定需要安装一堆的软件,比如MDK、IAR、串口调试助手等等,这个就是STM32的开发环境搭建。同样......
  • DC-DC直流隔离线性可调电源模块高压稳压输出0-80V/150V/220V/300V/400V/800V/1000V
    特点 效率高达75%以上 1*2英寸标准封装 单电压输出 可直接焊在PCB上 工作温度:-40℃~+75℃ 阻燃封装,满足UL94-V0要求 温度特性好 电压控制输出,输出电压随控制电......
  • 如何用 30s 给面试官讲清楚什么是 Session-Cookie 认证
    引言由于HTTP协议是无状态的,完成操作关闭浏览器后,客户端和服务端的连接就断开了,所以我们必须要有一种机制来保证客户端和服务端之间会话的连续性,也称为认证,最常见的应用......
  • linux strip去掉.out的符号信息
    、执行stripa.out,然后执行ls-l a.out看一下文件大小,用file命令来查看文件基本信息的,用nm命令 来列出一个目标文件中的各种符号。很明显,文件已经变小了,已经没有相关的......
  • Linux禁止某个sudo用户修改root密码
    (1)假设被禁止的sudo用户名为user(2)禁止user用户使用passwd命令更改密码(非最终配置)vim/etc/sudoers加入userALL=(root)!/usr/bin/passwd说明:第一栏规定它......
  • 230105_05_RPC底层原理
    返回值一定是一个对象,当前是把user拆分成1个id,1个name返回,当user变了,比如增加了属性,则需要再次修改相应代码,因此需要进一步优化直接将这个对象返回,不进行拆分Stub:返回......
  • Linux下安装Jdk
    Linux下安装Jdk安装包下载JDK各版本下载地址:JDK下载地址java-8u202安装包:点击下载开始安装在Linux中安装jdk非常简单,只需将对应的安装包解压到需要安装的目录即可。#......
  • 自学Linux,你需要get哪些点?
    近些年来,Linux操作系统越来越受欢迎,它的开源、免费是亮点也是优点,并且稳定性和安全性也得到认可,还有Linux有很多版本供大家选择,可以定制化。据我所知,现在很多公司的开发项......