centos 服务器编译安装apache+php
1、检查服务器中是否自带httpd,如果/etc/httpd/httpd.conf,说明系统自带httpd服务,需要卸载或关闭服务,不要让他影响到本次安装的服务启动
可以用 service httpd status 查看服务状态
2、停止服务: service httpd stop
3、卸载httpd:
查看httpd进程pid : ps -ef | grep httpd
结束进程: kill pid号(所有的都要结束)
查找httpd安装包: rpm -qa |grep httpd
卸载安装包: rpm -e httpd软件包
卸载安装包时先卸载httpd,然后卸载httpd-tools,卸载httpd 时,可能会出现错误:
Failed dependencies:
httpd >= 2.2.0 is needed by (installed) gnome-user-share-2.28.2-3.el6.x86_64
那就先卸载gnome-user-share-2.28.2-3.el6.x86_64,出现的的是哪个就卸载那个好了,如果是不能卸载的软件,就先停掉
4、下载并安装httpd
注意:安装Apache:在安装apache之前必须先安装apr、apr-util和pcre,否则会报错
4.1、安装apr:
tar zxvf apr-1.5.2.tar.gz
进入apr-1.5.2目录,然后执行:
./configure --prefix=/usr/local/apr
可能会报这个错误:rm: cannot remove `libtoolT': No such file or directory
网上有解决方案,但是根据原因来看,似乎不解决也没问题,所以抱着试试的心态,没有管这个错误,安装完成后,果然没有影响
make && make install
如果报 no acceptable C compiler found in $PATH,那是因为没有gcc编译器环境
执行yum -y install gcc+ gcc-c++即可
4.2、安装apr-util:
tar zxvf apr-util-1.5.4.tar.gz
进入解压后的目录
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
make && make install
4.3、安装pcre
tar -zxvf pcre-8.39.tar.gz
进入解压后的目录
./configure --prefix=/usr/local/pcre
make && make install
4.4 安装Apache
tar zxvf httpd-2.4.23.tar.gz
进入解压后的目录
./configure --prefix=/usr/local/apache --enable-so --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
make && make install
5、安装PHP
5.1、先安装依赖包libxml2
tar zxvf libxml2-2.8.0.tar.gz,进入解压后的目录
./configure --prefix=/usr/local/libxml2
make && make install
5.2 安装PHP
tar zxvf php-5.6.25.tar.gz
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-libxml-dir=/usr/local/libxml2 --with-apxs2=/usr/local/apache/bin/apxs --enable-inline-optimization --enable-shared --enable-opcache --enable-fpm --enable-bcmath --enable-soap --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-zip --with-mysql=/usr/local/mysql(如果已安装了MySQL就需要)
可能会报错:zip support requires ZLIB解决办法
yum install zlib-devel
make && make install
如果出现:
configure: error: Cannot find libmysqlclient_r under/usr/local/mysql. Note that the MySQL client library is not bundledanymore!
# cd /usr/local/mysql/lib
# ln -s libmysqlclient.so.23.5.5 libmysqlclient_r.so
然后重新configure
安装成功之后
cp php.ini-development /usr/local/php/etc/php.ini
php.ini所在的目录就是编译时设置的目录:--with-config-file-path=/usr/local/php/etc
6、修改Apache配置
vim /usr/local/apache/conf/httpd.conf
找到ServerName,将前面的#去掉,并将后面的改成localhost:80
LoadModule处添加LoadModule php5_module module/libphp5.so(一般都会有,如果没有就加上)
在AddType application处添加AddType application/x-httpd-php .php
找到 DirectoryIndex,在后面添加index.php,原先的index.html可删可不删
退出保存,esc->:->wq
重启Apache,/usr/local/apache/bin/apachectl restart
centos 服务器编译安装apache+php的更多相关文章
- CentOS 下编译安装Apache
CentOS 下编译安装Apache 卸载原有的apache 首先从 http://httpd.apache.or 下载apache源码包httpd-2.4.4.tar.gz然后从 http://ap ...
- centos手动编译安装apache、php、mysql
64位centos 5.5手动安装lamp,要求curl.json.pdo_mysql.gd,记录如下. centos 5.4.5.5.5.6的内核都是2.6.18,都可以安装php 5.3. 卸载旧 ...
- CentOS下编译安装Apache
与Apache 2.2.x相比,Apache 2.4.x提供了很多性能方面的提升,包括支持更大流量.更好地支持云计算.利用更少的内存处理更多的并发等.除此之外,还包括性能提升.内存利用.异步 I/O的 ...
- CentOS下编译安装Apache(httpd)
官网下载最新版本的apache, apr, apr-util http://httpd.apache.org/download.cgi#apache24 http://apr.apache.org/d ...
- centos 7编译安装apache
1.安装工具和依赖包 yum install unzipyum -y install gcc gcc-c++ 2.创建软件安装目录mkdir /usr/local/{apr,apr-util,apr- ...
- Linux(CentOS)下编译安装apache
Centos7.6系统 已经安装lnmp一键环境 想装个apache跑php7 (php7的安装以及与apache的交互在这里: https://www.cnblogs.com/lz0925/p/11 ...
- linux中编译安装Apache、PHP、MySQL(上)
1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...
- CentOS 6, 编译安装lamp (php-fpm)
1 整体要求 php-fpm.httpd.mysql三者分别安装在三台虚拟机上: 第一台虚拟主机用于安装Mariadb,第二台虚拟主机安装php-fpm:第三台虚拟主机安装httpd.三台主机安装完之 ...
- 在CentOS 6上安装Apache和PHP
本文演示如何在CentOS 6上安装Apache和PHP.CentOS 6自带的是Apache 2.2.3和PHP 5.1.6,您可以使用默认的CentOS包管理器进行安装yum.使用yum(而不是使 ...
随机推荐
- windows下注册ocx控件
OCX 是对象类别扩充组件(Object Linking and Embedding (OLE) Control Extension):是可执行的文件的一种,但不可直接被执行: 是 ocx 控件的扩展 ...
- spring framework三个版本的下载包区别
docs:该文件夹下包含Spring的相关文档.开发指南及API参考文档:dist:该文件夹下包含Spring jar包.文档.项目等内容:schema:里面包含了Spring4所用到的xsd文件:
- SqlServer 将表里面的值赋给变量
@@c_beiz varchar(500) select top 1 @c_beiz = c_beiz from g_billd_qh_tmp where u_id=''+@uid+'' and io ...
- leetcode-第14周双周赛-1271-十六进制魔术数字
自己的提交: class Solution: def toHexspeak(self, num: str) -> str: num = hex(int(num)) num = str(num)[ ...
- shell编程基础干货
变量及赋值 设置变量 A=‘china’ 取消变量 unset A 加上 export 关键字 代表全局变量 a=$(ls -l /root/bin) ##运行里面的命令,并把结 ...
- 【JVM】符号引用和直接引用
在JVM中类加载过程中,在解析阶段,Java虚拟机会把类的二级制数据中的符号引用替换为直接引用. 1.符号引用(Symbolic References): 符号引用以一组符号来描述所引用的目标,符号可 ...
- P1537 弹珠
P1537 弹珠 题目描述 玛莎和比尔各自有自己的弹珠收藏.他们想重新分配收藏品,使两人能平等拥有弹珠.如果所有的弹珠的价值相同,那么他们就可以平分.但不幸的是,有一些弹珠更大,或者更美丽,所以,玛莎 ...
- 3.3 理解 Redux 中间件(转)
这一小节会讲解 redux 中间件的原理,为下一节讲解 redux 异步 action 做铺垫,主要内容为: Redux 中间件是什么 使用 Redux 中间件 logger 中间件结构分析 appl ...
- Linux启动过程的内核代码分析
参考上文: http://www.cnblogs.com/long123king/p/3543872.html http://www.cnblogs.com/long123king/p/3545688 ...
- Junit用断言对控制台输出进行测试
核心思路: 在测试前,将标准输出定向到ByteArrayOutputStream中去 用输出流文件断言内容 测试完成,将标准输出修改为console 具体操作示例 基本通用复制粘贴操作 public ...