Linux下apache安装php

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

 

posted @ 2017-08-12 15:57  程序生(Codey)  阅读(1593)  评论(0编辑  收藏  举报