linux系统CentOS7
先下载Apache需要依赖的软件
1、APR
下载地址http://apr.apache.org/download.cgi
wget下载路径http://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz
这里用到的是
apr-1.5.2.tar.gz

2、APR-util
下载地址同APR一样http://apr.apache.org/download.cgi
wget下载路径http://mirror.bit.edu.cn/apache//apr/apr-util-1.5.4.tar.gz
这里用到的是
apr-util-1.5.4.tar.gz

3、PCRE
下载地址ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
wget下载路径ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz
这里用到的是
pcre-8.37.tar.gz

Apache
下载地址http://httpd.apache.org/download.cgi
wget下载路径http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.17.tar.gz
这里用到的是
httpd-2.4.17.tar.gz

PHP
下载地址http://www.php.net/downloads.php
wget下载路径http://cn2.php.net/distributions/php-5.6.15.tar.gz
这里用到的是
php-5.6.15.tar.gz

用 WinSCP上传到指定的目录下,这里是
/usr/local/src

shell端
需要先安装gcc与gcc-c++
yum添加/删除/更新RPM包即软件包
install : 安装一个或多个软件包在系统上
-y      : 回答所有的问题为是
这里安装两个软件包gcc和gcc-c++
yum install -y gcc gcc-c++

进入到安装包目录
cd /usr/local/src

解压缩APR到当前文件夹
tar -zxvf apr-1.5.2.tar.gz

进入APR的解压目录
cd apr-1.5.2

配置APR安装目录
configure这一步一般用来生成 Makefile,为下一步的编译做准备,可以通过在 configure 后加上参数来对安装进行控制
--prefix : 设置安装目录
./configure --prefix=/usr/local/apr

开始编译APR
make编译,大多数的源代码包都经过这一步进行编译(有些perl或python编写的软件需要调用perl或python来进行编译)
make

开始安装
make install这条命令来进行安装(有些软件需要先运行 make check 或 make test 来进行一些测试),这一步一般需要有 root 权限(因为要向系统写入文件)
make install

返回上级目录
cd ../

解压缩APR-util到当前文件夹
tar -zxvf apr-util-1.5.4.tar.gz

进到解压缩目录
cd apr-util-1.5.4

配置安装目录及关联APR
--with-apr : 指定APR的安装目录
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

编译
make

安装
make install

返回上级目录
cd ../

解压缩PCRE到当前文件夹
tar -zxvf pcre-8.37.tar.gz

进入解压缩目录
cd pcre-8.37

配置安装目录
./configure --prefix=/usr/local/pcre

编译
make

安装
make install

返回上级目录
cd ../

解压缩Apache到当前文件夹
tar -zxvf httpd-2.4.17.tar.gz

进入解压缩目录
cd httpd-2.4.17

配置Apache安装
httpd允许配置的选项
--prefix             : 安装路径
--sysconfdir         : 指定配置文件路径
--enable-so          : DSO兼容,DSO=Dynamic Shared Object,动态共享对象,可实现模块动态生效
--enable-ssl         : 支持SSL/TLS,可以实现https访问
--enable-cgi         : 支持CGI脚本(默认对非线程的MPM模式开启)
--enable-rewrite     : 启用Rewrite功能
--enable-deflate     : 支持压缩
--with-z             : 使用指定的zlib库,不指定路径会自动寻找
--with-apr           : 指定apr安装路径
--with-apr-util      : 指定apr-util安装路径
--with-pcre          : 使用指定的PCRE库,不指定路径会自动寻找
--enable-modules     : 支持动态启用的模块,可选参数有all,most,few,reallyall
--enable-mpms-shared : 支持动态加载的MPM模块,可选all
--with-mpm           : 设置默认启用的MPM模式
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre

编译
make

安装
make install

修改Apache配置文件
进入后按键盘i进行编辑,修改如下值
一大堆LoadModule下面
添加
#加载PHP处理模块
LoadModule php5_module modules/libphp5.so
#添加PHP等后缀的处理
AddType application/x-httpd-php .php
如果服务器有任何问题将通知的邮箱地址
修改
ServerAdmin you@example.com
改成
ServerAdmin zdy_521@126.com
配置服务器名称,本机ip为192.168.155.128,如果DNS未配置,此段语句要放在配置文件开头处
修改
ServerName www.example.com:80
改成
ServerName 192.168.155.128:80
修改
DirectoryIndex index.html
改成
DirectoryIndex index.php index.html
编辑后按esc键输入:wq按回车保存。
vim /usr/local/apache/conf/httpd.conf

将Apache加入到可控制启动的服务的文件夹内,并命名httpd,即service可控制的服务名,这样就可以使用service httpd start来启动Apache了
cp /usr/local/apache/bin/apachectl /etc/init.d/httpd

修改/etc/init.d/httpd使Apache可以设置成开机启动
在第一行#!/bin/sh下一行添加如下两行
#chkconfig: 2345 10 90
#description: Activates/Deactivates Apache Web Server
#必须有,其中:2345是设为要启动的运行级别,10是启动优先级,90是杀死进程的优先级,谁优先谁先挂的意思。
编辑后按esc键输入:wq按回车保存。
vim /etc/init.d/httpd

让Apache服务加入到开机启动指令管理的服务列表中
chkconfig --add httpd

设置成开机启动
chkconfig httpd on

返回上级目录
cd ../

安装php前需要安装libxml2和libxml2-devel
yum install -y libxml2 libxml2-devel

解压缩PHP到当前文件夹
tar -zxvf php-5.6.15.tar.gz

进入解压缩目录
cd php-5.6.15

配置PHP安装
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config

编译
make

安装
make install

将安装包里的开发版php.ini复制到配置php安装时指定存放php.ini的位置即--with-config-file-path指向的位置
cp php.ini-development /usr/local/php/php.ini

编辑php.ini
将前面的;去掉使PHP支持mysql,并且配置时要指定--with-mysql的值,如果之前安装时未配置,需要重新配置,编译,安装
;extension=php_mysql.dll
要使用phpmyadmin或mysqli函数打开,并且配置时要指定--with-mysqli的值,如果之前安装时未配置,需要重新配置,编译,安装
;extension=php_mysqli.dll
要PHP支持png,jpg,gif等(phpcmsV9必须)打开
;extension=php_gd2.dll
大字符集,支持多字符集之间的转换打开
;extension=php_mbstring.dll
php5默认<?php echo date("Y-m-d H:i:s");?>时间与北京时间相差八小时(少八小时)
为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时
查找
;date.timezone =
将;去掉,并修改成
date.timezone = PRC
除了E_NOTICE类型的错误(Notice)不报告,其他的都报告,查找
error_reporting = E_ALL
改成
error_reporting = E_ALL & ~E_NOTICE
使 include 等可以包含域外网页如 include_once "http://www.126.com";
找到
allow_url_include = Off
改成
allow_url_include = On
vim /usr/local/php/php.ini

启动Apache,之前未启动是因为未安装PHP关联前Apache配置文件中LoadModule php5_module modules/libphp5.so找不到加载模块报错
service httpd start

开放防火墙80端口访问
firewall-cmd --zone=public --add-port=80/tcp --permanent

重启防火墙
firewall-cmd --reload

附一:
PHP ./configure允许配置的选项,列表如下(部分参数未得到解释)
--prefix                     : 指定 php 安装目录
--with-apxs2                 : 整合 Apache,apxs功能是使用mod_so中的LoadModule指令,加载指定模块到 Apache,要求 Apache 要打开SO模块
--with-config-file-path      : 指定php.ini位置
--with-mysql                 : mysql安装目录,对mysql的支持。例--with-mysql=/usr/local/mysql
--with-mysqli                : mysqli扩展技术支持不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。例--with-mysqli=/usr/local/mysql/bin/mysql_config
--with-iconv-dir             : 选项指令,用于 PHP 编译时指定 iconv 在系统里的路径,否则会扫描默认路径。例--with-iconv-dir=/usr/local
--with-freetype-dir          : 打开对freetype字体库的支持
--with-jpeg-dir              : 打开对jpeg图片的支持
--with-png-dir               : 打开对png图片的支持
--with-zlib-dir              : 打开zlib库的支持,用于http压缩传输
--with-libxml-dir            : 打开libxml2库的支持
--disable-rpath              : 关闭额外的运行库文件
--enable-bcmath              : 打开图片大小调整,用到zabbix监控的时候用到了这个模块
--enable-shmop               : 这样就使得你的PHP系统可以处理相关的IPC函数了。和--enable-sysvsem一起使用
--enable-sysvsem             : 这样就使得你的PHP系统可以处理相关的IPC函数了。和--enable-shmop一起使用
--enable-inline-optimization : 优化线程
--with-curl                  : 打开curl浏览工具的支持
--with-curlwrappers          : 运用curl工具打开url流
--enable-mbregex             :
--enable-fpm                 : 打上PHP-fpm 补丁后才有这个参数,CGI方式安装的启动程序
--enable-mbstring            : 多字节,字符串的支持
--with-mcrypt                : mcrypt算法扩展
--with-mhash                 : mhash算法扩展
--with-gd                    : 打开gd库的支持
--enable-gd-native-ttf       : 支持TrueType字符串函数库
--with-openssl               : openssl的支持,加密传输https时用到的
--enable-pcntl               : freeTDS需要用到的,可能是链接mssql 才用到
--enable-sockets             : 打开 sockets 支持
--with-xmlrpc                : 打开xml-rpc的c语言
--enable-zip                 : 打开对zip的支持
--enable-ftp                 : 打开ftp的支持
--with-bz2                   : 打开对bz2文件的支持
--without-iconv              : 关闭iconv函数,字符集间的转换
--with-ttf                   : 打开freetype1.*的支持,可以不加了
--with-xsl                   : 打开XSLT 文件支持,扩展了libXML2库 ,需要libxslt软件
--with-gettext               : 打开gnu 的gettext 支持,编码库用到
--with-pear                  : 打开pear命令的支持,PHP扩展用的
--enable-calendar            : 打开日历扩展功能
--enable-exif                : 图片的元数据支持
--enable-magic-quotes        : 魔术引用的支持
--disable-debug              : 关闭调试模式
--with-mime-magic            : 魔术头文件位置。例--with-mime-magic=/usr/share/file/magic.mime

CGI方式安装才用的参数
--enable-fastCGI             : 支持fastcgi方式启动PHP
--enable-force-CGI-redirect  : 重定向方式启动PHP
--with-ncurses               : 支持ncurses 屏幕绘制以及基于文本终端的图形互动功能的动态库
--with-gmp                   : 应该是支持一种规范
--enable-dbase               : 建立DBA 作为共享模块
--with-pcre-dir              : perl的正则库案安装位置。例--with-pcre-dir=/usr/local/bin/pcre-config
--disable-dmalloc            :
--with-gdbm                  : dba的gdbm支持
--enable-sigchild            :
--enable-sysvshm             :
--enable-zend-multibyte      : 支持zend的多字节
--enable-wddx                :
--enable-soap                :


./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php --with-jpeg-dir --with-curl --with-gd

Centos7-安装Apache2.4+PHP5.6的更多相关文章

  1. CentOS7安装Apache2.4+PHP5.6

    linux系统CentOS7 先下载Apache需要依赖的软件 1.APR 下载地址http://apr.apache.org/download.cgi wget下载路径http://mirror.b ...

  2. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...

  3. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...

  4. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...

  5. CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5

    一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...

  6. 自己编写的:centos6.6上编译安装apache2.4+php5.6+mysql5.6【亲自】

    在centos6.6上安装apache2.4+php5.6+mysql5.6 关于wget的安装 将之前装系统的.iso文件挂载到光驱 由于我在/home/jinnan/下建立了一个cdrom文件夹 ...

  7. Debian安装Apache2+MySQL5+PHP5(zz)

    转载:http://hi.baidu.com/lostdays/item/1d5e7e4833b4d20fc116134b 终于在Debian用apt-get安装好LAMP了,之前在CentOS使用编 ...

  8. ubuntu 安装apache2,mysql,php5,phpmyadmin等软件

    1.安装apache2  sudo apt-get install apache2  输入Y回车  apache2 安装完成  检测:在浏览器输入localhost 出现It works则成功. 2. ...

  9. Windows下安装Apache2.4+PHP5.4+Mysql5.7

    注:文中所写的安装过程均在Win7 x86下通过测试,提供的百度云下载链接均为32位安装包,如需Apache和PHP的64位安装包请从官网下载! 一.安装Apache2.4.12 Apache官方下载 ...

  10. CentOS6.4下编译安装Apache2.4+PHP5.6

    安装Apache2.4: 首先从  http://httpd.apache.org/download.cgi#apache24下载apache源码包httpd-2.4.4.tar.gz从  http: ...

随机推荐

  1. NOJ——1669xor的难题(详细的树状数组扩展—异或求和)

    [1669] xor的难题 时间限制: 1000 ms 内存限制: 65535 K 问题描述 最近Alex学长有个问题被困扰了很久,就是有同学给他n个数,然后给你m个查询,然后每个查询给你l和r(左下 ...

  2. js方法encodeURI后,关于get请求url长度的限制测试与总结

    (本文仅作个人记录只用比较啰嗦,重点只看红字部分即可) Test.jsp 请求test1.jsp IE11环境下,get请求url最多4096个字节: 请求的是http://localhost:908 ...

  3. Linux rpm 命令参数使用

    RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种 ...

  4. python的dbutil

    目录机构如下: dbutil代码如下: #!/usr/bin/python # -*- coding:utf-8 -*- import configparser import pymysql clas ...

  5. 基于css3翻牌效果

    <div class="map_block float_l lineItem"> <a href="javascript:;" class=& ...

  6. python3基础语法(标识符,注释,数据类型,获取用户输出,代码块,python保留字)

    编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -*- coding: cp-1252 -*- ...

  7. AC日记——[SDOI2015]星际战争 洛谷 P3324

    题目描述 3333年,在银河系的某星球上,X军团和Y军团正在激烈地作战. 在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进攻X军团的阵地,其中第i个巨型机器人的装甲值为Ai.当一个巨型机器人的装甲值 ...

  8. vue 之循环添加不同class

    在vue中按条件为class动态添加直接使用:class="[{ active: isActive }, errorClass]"之类的表达式就可以 但是如果我们要为一个循环列表按 ...

  9. Codefroces Gym101572 I.Import Spaghetti-有向图跑最小环输出路径(Floyd)

    暑假学的很多东西,现在都忘了,补这道题还要重新学一下floyd,有点难过,我暑假学的东西呢??? 好了,淡定,开始写题解. 这个题我是真的很难过啊,输入简直是有毒啊(内心已经画圈诅咒出题人无数次了.. ...

  10. 「NOI2014」动物园

    link : https://loj.ac/problem/2246 水水KMP #include<bits/stdc++.h> #define ll long long #define ...