php

1.下载解压

cd /usr/local/src

wget http://mirrors.sohu.com/php/php-5.6.9.tar.gz

tar zxvf php-5.6.9.tar.gz

cd php-5.6.9

2.编译安装

./configure --with-apr=/usr/local/apr --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc--with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir 
--with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-mcrypt --with-openssl --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
编译来至(全)http://blog.csdn.net/godmatrix/article/details/5969558
./configure \ 配置,安装 --with-apr=/usr/local/apr \ 指定apr代码的目录   --prefix=/usr/local/php \     指定php安装目录. --with-apxs2=/usr/local/apache2/bin/apxs \ 让Apache服务器能够支持PHP。整合 apache,apxs功能是使用mod_so中的LoadModule指令,加载指定模块到 apache,要求 apache 要打开SO模块 --with-config-file-path=/usr/local/php/etc \ 指定php.ini配置文件的位置 --with-mysql=/usr/local/mysql \ MySQL安装的目录,对mysql的支持 --with-libxml-dir \ 打开对libxml2库的支持 --with-gd \ 打开对gd库的支持 --with-jpeg-dir \ --with-png-dir \ 打开对jpeg图片和png图片的支持 --with-freetype-dir \ 打开对freetype字体库的支持 --with-iconv-dir \ 打开对iconv函数库,种字符集间的转换 --with-zlib-dir \ 打开对zlib库的支持 --with-bz2 \ 打开对bz2文件的支持 --with-openssl \ 打开openssl的支持,加密传输时用到的 --with-mcrypt \ 算法,mhash和mcrypt都是算法的扩展 --enable-soap \ 打开soap的支持 --enable-gd-native-ttf \ 支持True Type 字符串 函数库 --enable-mbstring \ 多字节,字符串的支持 --enable-sockets \ 打开sockets支持 --enable-exif \ 图片的元数据支持 --disable-ipv6 不支持ipv6

  

错误1

configure: error: xml2-config not found. Please check your libxml2 installation.

配置:错误:xml2-config不见了。请检查你的libxml2安装。

解决:

yum install libxml2 libxml2-devel -y

  

错误2

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

配置:错误:找不到OpenSSL的< evp.h >

解决:

yum install openssl openssl-devel -y

  

错误3

Configure: error: Please reinstall the BZip2 distribution

配置:错误:请重新安装BZip2分布

解决:

yum install bzip2 bzip2-devel -y

  

错误4

configure: error: jpeglib.h not found.

配置:错误:jpeglib。没有找到。

解决:

yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y

  

错误5

Configure: error: mcrypt.h not found. Please reinstall libmcrypt.

配置:错误:mcrypt。没有找到。请重新安装libmcrypt。

解决:

安装epel-release源

 yum install epel-release -y

yum install libmcrypt-devel -y

  

最后执行

make

make install

3.拷贝PHP主配置文件

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

  

4.修改apache的配置文件,使apache支持解析php

vim /usr/local/apache2/conf/httpd.conf
1.找到

#ServerName www.example.com:80

改为
ServerName www.example.com:80
2.找到 

<Directory /> AllowOverride none Require all denied </Directory> 

改为 

<Directory /> Options FollowSymLinks AllowOverride none Order deny,allow Allow from all </Directory> 

3.找到

<IfModule dir_module>
DirectoryIndex index.html
</IfModule> 改为 <IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule> 4.找到 AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz 改为 AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php 注:
1.ServerName www.example.com:80 打开服务器占用80端口
2.Allow from all 允许访问web内容目录
3.DirectoryIndex index.html index.php 目录索引支持php
4. AddType application/x-httpd-php .php 应用类型支持php

  

5.检查配置文件是否错误

/usr/local/apache2/bin/apachectl -t

6.启动apache服务

/usr/local/apache2/bin/apachectl start

7.查看进程

ps aux |grep httpd

8.关闭防火墙。

永久关闭SElinux,重启生效。

vim /etc/selinux/config
找到

SELINUX=enforcing

改为

SELINUX=disabled

临时关闭

 setenforce 0

getenforce  查看当前SElinux防火墙状态

 setenforce 0 是临时关闭

 setenforce 1 是临时打开

# enforcing - SELinux security policy is enforced.打开
# permissive - SELinux prints warnings instead of enforcing.打开不拦截
# disabled - No SELinux policy is loaded.关闭,默认

  

9.清空iptables规则

iptables -F

 service iptables save

10.浏览器访问IP

是否显示 it works!显示说明成功。

11.测试解析php

cd /usr/local/apache2/htdocs

php主配置文件vim /usr/local/apache2/conf/httpd.conf指定的文档根目录的路径DocumentRoot"/usr/local/apache2/htdocs"

touch 1.txt
echo 'qqqqq' >> 1.txt http://192.168.1.116/1.txt vim 2.php <?php phpinfo(); ?> http://192.168.1.116/2.php

保存镜像4.备注php安装ok

php安装成功

如果Loaded Configuration File等于none;

先确定Configuration File (php.ini) Path的地址,此处为/usr/local/php/etc;

#find /usr -name 'php.ini'

#cp 查找到的php.ini路径 /usr/local/php/etc

vim /usr/local/apache2/conf/httpd.conf

在apache配置文件中增加 
PHPIniDir “The path to your php.ini”, 
比如:PHPIniDir "/usr/local/php/etc/php.ini"
确保PHPIniDir在loadModule php5_module之前 
重启apache
/usr/local/apache2/bin/apachectl restart

php安装包:链接:http://pan.baidu.com/s/1nvbrFJF 密码:sy20

Linux下apache安装php的更多相关文章

  1. linux 下apache安装、启动和配置

    linux 下 apache安装 1:系统安装,这里就不说了,网上有很多,也很简单.顺便说下,我用的是redhat 9: 2:在图形界面下下载apache 安装包,我下的是 httpd-2.2.9.t ...

  2. Apache Linux下Apache安装步骤

    Apache简介         Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广 ...

  3. linux下apache安装ssl步骤

    制作证书: 参考:linux下运用opensll制作ssl证书 生成三个证书 server.crt .server-ca.crt.server.key 安装openssl tar -xzvf open ...

  4. Linux下apache+phppgadmin+postgresql安装配置

    Linux下apache+phppgadmin+postgresql安装配置 操作系统:CentOS 安装包:httpd(首选yum), php(包括php以及php-pgsql,php-mbstri ...

  5. Linux下编译安装Apache Http Server

    Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...

  6. Linux下编译安装Apache及模块

    Apache是时下最流行的Webserver软件之中的一个,支持多平台,可高速搭建web服务,并且稳定可靠.并可通过简单的API扩充.就能够集成PHP/Python等语言解释器. 文章这里解说怎样在l ...

  7. 在linux下手动安装 apache, php, mysql--终极版

    在linux下手动安装 apache, php, mysql: 参考: http://www.cnblogs.com/lufangtao/archive/2012/12/30/2839679.html ...

  8. linux 下 apache相关;启动、停止、重启命令;配置文件位置等等

    linux 下 apache启动.停止.重启命 基本的操作方法: 本文假设你的apahce安装目录为/usr/local/apache2,这些方法适合任何情况 apahce启动命令: 推荐/usr/l ...

  9. 分享:linux下apache服务器的配置和管理

    linux下apache服务器的配置和管理. 一.两个重要目录: Apache有两个重要的目录:1.配置目录/etc/httpd/conf:2.文档目录/var/www: 二.两种配置模式: Apac ...

随机推荐

  1. [Android Traffic] 根据网络类型更改下载模式

    转载自: http://blog.csdn.net/kesenhoo/article/details/7396321 Modifying your Download Patterns Based on ...

  2. ElasticSearch refresh API

    在 Elasticsearch 中,写入和打开一个新段的轻量的过程叫做 refresh . 默认情况下每个分片会每秒自动刷新一次.这就是为什么我们说 Elasticsearch 是 近 实时搜索: 文 ...

  3. JavaWeb教程路线

    主要内容大概例如以下: 1.开发环境搭建 2.servlet/jsp解说 3.mysql解说 4.JDBC解说 5.ssh解说 6.整合开发 7.样例具体解释

  4. shell中字符串截取

    Linux 的字符串截取很有用.有八种方法. 假设有变量 var="User:123//321:/home/dir" 1. # 号截取,删除左边字符,保留右边字符. [root@z ...

  5. cordova与ios native code交互的原理

    非常早曾经写了一篇博客,总结cordova插件怎么调用到原生代码:cordova调用过程,只是写得太水.基本没有提到原理.近期加深了一点理解,又一次补充说明一下 js调用native 以下是我们产品中 ...

  6. datatables插件适用示例

    本文共四部分:官网 | 基本使用|遇到的问题|属性表 一:官方网站:[http://www.datatables.NET/] 二:基本使用:[http://www.guoxk.com/node/jQu ...

  7. MySQL性能优化的最佳20+条经验(转)

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序 员需要去关注的事情.当我们去设计数据库表结构,对操作数 ...

  8. xml中处理特殊字符和转义字符

    XML 中的特殊字符 > 和 开始标记 > 例如: 5 ]] 如何获得这些HTML内容呢? XmlDocument doc = new XmlDocument(); doc.Load(&q ...

  9. 命令行添加pod示例

    1.创建AlamFireDemo 工程,关闭工程 2.进入到工程目录 执行 pod init 命令 生成 PodFile文件 3.vi PodFile编辑该文件 启用:platform :ios, ' ...

  10. SpringMVC传值(对象或字符串)给前台js

    java对象到js对象 1.先使用Jackson把对象转换成json串 ObjectMapper objectMapper = new ObjectMapper(); String json = ob ...