线上服务器PHP版本编译安装升级全记录
1.将原来的PHP重命名一下
cd /usr/local/bin/
mv php php.2.9
2.安装依赖
yum install gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel
报错,centos版本太老了,5.5,yum源已经不可用了
3.更换yum源,参考这里
//通过修改CentOS-Base.repo文件中的源地址来处理
vi /etc/yum.repos.d/CentOS-Base.repo
将原来的baseurl更改为新的,最终将内容更改为:
文件也可直接替换:链接:网盘链接 密码:6xik
# CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist= does not work for you, as a fall back you can try the # remarked out baseurl= line instead. # # [base] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ baseurl=http://vault.centos.org/5.11/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
baseurl=http://vault.centos.org/5.11/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
baseurl=http://vault.centos.org/5.11/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
baseurl=http://vault.centos.org/5.11/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
baseurl=http://vault.centos.org/5.11/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
3.1清一下yum缓存:yum clean all
4.继续安装依赖
yum install gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel
yum install -y libc-client-devel
5.进入你放PHP安装包的路径,我的是在tmp下面
cd /tmp
tar -zxvf php-5.4.13.tar.gz
cd ./php-5.4.13
//编译命令
./configure --prefix=/usr/local/php --with-apxs2=/tongfu.net/env/apache22/bin/apxs --with-zlib --with-kerberos --with-mysql --with-mysqli --with-pdo-mysql --enable-mbstring --with-curl --with-gd --with-imap=../imap-2007e --with-imap-ssl --with-png-dir=/usr/lib64 --with-jpeg-dir=/usr/lib64 --with-freetype-dir=/usr/lib64
//安装
make && make install
cp ./php-5.4.13/libs/php.ini /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini
//修改时区为
date.timezone=PRC
cd /tmp
6.修改httpd.conf
//加载的模块修改为
#LoadModule php5_module /usr/local/php5/lib/libphp5.so
LoadModule php5_module /usr/local/php/lib/libphp5.so
7.查看扩展情况
//查看PHP安装的扩展情况
/usr/local/php/bin/php -m
8.发现没有memcache,memcached,redis扩展,安装扩展
/usr/local/php/bin/pecl install memcache
/usr/local/php/bin/pecl install memcached-2.2.0
9.安装memcached扩展失败,缺少libmemcached,处理方法(参考:https://www.cnblogs.com/dyllove98/archive/2014/11/27/4126840.html):
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
tar -zxf libmemcached-1.0.18.tar.gz
cd ./libmemcached-1.0.18
//编译安装
./configure --prefix=/usr/local/libmemcached --with-memcached //注意:--with-memcached这个选项一定要加上
make && make install
10.安装memcached扩展
cd /tmp
wget http://pecl.php.net/get/memcached-2.2.0.tgz
tar -zxvf memcached-2.2.0.tgz
cd ./memcached-2.2.0
// 进入解包后的目录,先使用phpize命令生成一个configure文件
/usr/local/php/bin/phpize //这个命令在编译安装php时会在安装目录下的bin目录下,但是在yum安装的php中需要安装一个名叫php-devel的包才会有(我在这里被坑过……)
./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached //此处的php-config如果不知道在哪里的话可以用find / -name php-config命令找一下
make && make install
11.安装redis扩展
/usr/local/php/bin/pecl install redis
12.将扩展加入php.ini
vi /usr/local/php/lib/php.ini
//加入
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525"
extension = "memcache.so"
extension = "memcached.so"
extension = "redis.so"
13.重启apache
service httpd restart //或者找到apachectl restart
线上服务器PHP版本编译安装升级全记录的更多相关文章
- 线上服务器上安装的VNCServer不能正常工作
1.问题描述: 线上服务器上安装的不能正常工作 2.解决问题过程: 一. 重启vncserver 运行命令:vncserver -kill :1和vncserver :1 二. 发现vncserver ...
- Linux编译安装升级bash5.1
线上服务器有次做漏洞扫描时,被扫描出有bash漏洞.平时还是比较少遇到有bash的漏洞,好在编译升级比较简单. 测试环境系统:CentOS.Ubuntu 一.下载官网最新bash版本 bash官网下载 ...
- 记录一次linux线上服务器被黑事件
1.原因:本来在家正常休息了,我们放在上海托管机房的线上服务器突然蹦了远程不了,服务启动不了,然后让上海机房重启了一次,还是直接挂了,一直到我远程上才行. 2.现象:远程服务器发现出现这类信息 Hi, ...
- Linux下指定版本编译安装LAMP
说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...
- 加密通信软件Signal 2.92版本编译安装折腾手记(Ubuntu 18.04)
加密通信软件Signal 2.92版本编译安装折腾手记(Ubuntu 18.04) 前言 加密通信软件Signal是开源的,安全性很高,号称斯诺登也推荐大家使用.既然这么好,那必然会有不少人去尝试复制 ...
- 【效率工具】SSH一键登录脚本(可一键从跳板机登录线上服务器)
说明 前阵子上线,一次性上了十个服务,一直上到凌晨才完事,期间每个服务都要先输入跳板机的登录信息来登录跳板机,然后再输入线上服务器的信息来登录线上服务器,实在是太过于麻烦,而且有些服务还有好几台服务器 ...
- 线上服务器TCP被打满是啥情况
从一个线上服务器警告谈谈backlog https://wangxiangnan.cc/?p=105 缘起 双十一如期而至,此时的我因为在处理客户的一个问题已经陷入了忙碌.突然,不断接到驻场实施发来的 ...
- 运维笔记--线上服务器git环境配置
场景描述: 我们采用git去管理代码分支,本地开发环境,线上服务器多数情况下也会使用git去管理程序代码,那么新的一台服务器,如果指定了目标路径作为代码存放路径,该如何配置git环境, 以达到跟远程服 ...
- 分享下使用 svn,测试服务器代码自动更新、线上服务器代码手动更新的配置经验
分享下使用 svn,测试服务器代码自动更新.线上服务器代码手动更新的配置经验 利用SVN的POST-COMMIT钩子自动部署代码 Linux SVN 命令详解 Linux SVN 命令详解2 使用sv ...
随机推荐
- leetcode 从排序数组中删除重复项
最近的学习是相当的无聊,并且很无趣,每天都浪费了很多时间,比如今天下午,就是搞一手成语接龙,我也是醉了- 并且我也不知道学什么了,所以决定刷题 虽然我是0算法基础,0逻辑能力的渣渣,但是尽力每天做一道 ...
- MySQL8.0本地访问设置为远程访问权限
1.登录MySQL mysql -u root -p 输入您的密码 2.选择 mysql 数据库 use mysql; 因为 mysql 数据库中存储了用户信息的 user 表. 3.在 mysql ...
- 【题解】 [NOI1999]生日蛋糕
题面 传送门 Solution 搜索每一层的半径和高度,然后加入一些剪枝就好了. #include<stdio.h> #include<stdlib.h> #include&l ...
- loj#6261. 一个人的高三楼(NTT+组合数学)
题面 传送门 题解 统计\(k\)阶前缀和,方法和这题一样 然后这里\(n\)比较大,那么把之前的柿子改写成 \[s_{j,k}=\sum_{i=1}^ja_i{j-i+k-1\choose j-i} ...
- UIView之setNeedsDisplay与drawRect 和 setNeedsLayout与layoutSubViews
1.UIView的setNeedsDisplay和setNeedsLayout方法 首先两个方法都是异步执行的.而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到 UI ...
- docker kafka 修改hostname导致的问题
昨天发现开发环境的3台kafka无法消费,所以今日kafka的容器执行如下语句 bash-4.4# ./kafka-topics.sh --describe --zookeeper 192.168.0 ...
- 简易 PHP 教程小记
一.简介: 1.用处广 2.免费 3.PHP Hypertext Preprocessor 二.语法: 1.<?php coders ?> 2.注释:"#" " ...
- nginx高性能WEB服务器系列之三版本升级
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...
- php post get 繁体、日文、韩文时 自动添加 反斜杠 问题
做些二次开发项目,数据库.文件编码没法大规模的修改,比如二次开发一个日文系统,编码是JA16SJIS,$_POST或$_GET的信息中如果“申請”,得到的信息就会变成“申\請”,多出一个反斜杠! 先贴 ...
- 关于如何爬虫妹子图网的源码分析 c#实现
网上也出现一些抓取妹子图的python 代码,今天我们用c#实现爬虫过程. 请看我的网站: www.di81.com private void www_94xmn_Com(string url, st ...