Linux服务器搭建之<PHP;

Posted YQS_Love

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux服务器搭建之<PHP;相关的知识,希望对你有一定的参考价值。

安装Apache,请看 [Linux服务器搭建之Apache](http://blog.csdn.net/YQS_Love/article/details/51001621)

安装MySQL,请看[Linux服务器搭建之MySQL](http://blog.csdn.net/yqs_love/article/details/51577506)

mysql和Apache已经安装成功,接下来我们来安装、配置php环境,编译PHP5的时候比较复杂。

此教程在CentOS 6下,在7以后有些命令可能不适用

一、安装PHP前准备:

1、检查php是否已经安装,使用php -v,是否能够看到版本号;或者使用rpm -qa | grep php查看是否安装过。

2、下载PHP安装包,下载地址:http://www.php.net/downloads.php 我下载的是php-5.3.18.tar.gz,放在Linux的任意目录下,只在编译时指定安装到的目录。

tar -zxvf php-5.3.18.tar.gz
cd php-5.3.18

不过在接下来的configure编译过程中,遇到了一些比较繁琐的问题:

1、提示错误信息:configure: error: Cannot find MySQL header files under /var/lib/mysql/
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-mysql=/var/lib/mysql/
解决:./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-config-file-path=/usr/local/lib –enable-track-vars –with-xml –with-mysql

2、提示错误信息:configure: error: Cannot find MySQL header files under yes

解决:此问题主要是由于上面的configure参数中没有指定–with-mysql路径。
通过find / -name mysql.h查看是否存在这个文件所在路径,如果不存在,则要安装MySQL-devel-4.1.12-1.i386.rpm(必须要安装的)。
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-config-file-path=/usr/local/lib –enable-track-vars –with-xml –with-mysql-dir=/usr/include/mysql/mysql.h

3、提示错误信息:configure: error: Try adding –with-zlib-dir=

. Please check config.log for more information.
解决:
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-config-file-path=/usr/local/lib –enable-track-vars –with-xml –with-mysql-dir=/usr/include/mysql/mysql.h –with-zlib-dir=/usr/lib

编译PHP完整的configure参数(请注意apache的路径):
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-config-file-path=/usr/local/lib –enable-track-vars –with-xml –with-mysql-dir=/usr/local/mysql/include/mysql.h –with-zlib-dir=/usr/lib
make && make install

配置php.ini,只需要把php-5.3.18安装包中的php.ini-production拷贝到/usr/local/php/lib/下即可。
cp php.ini-production /usr/local/php/lib/php.ini (一定要命名为php.ini)

二、配置Apache中的PHP环境

需要修改Apache的配置文件httpd.conf以得到PHP的解析:

1、在LoadModule中添加:添加libphp5.so 模块,添加下面的代码,位置跟着默认的LoadModule模块的任意位置;
LoadModule php5_module modules/libphp5.so

                        图1 添加libphp5.so 模块

2、在AddType application/x-gzip .gz .tgz下面添加:
# probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

3、在DirectoryIndex增加 index.php,以便Apache识别PHP格式的index

DirectoryIndex index.html index.php

                                图2 增加index.php

三、问题
/*************意注***********/
如果安装遇到如下问题(下面的情况前提是你安装了perl,没有安装安装后在看):
首先, 通过错误提示, 我们得知”I cannot run apxs”. 我一直以为是apxs安装有问题, 但找了很久仍未得到合理的解释和解决方法.
于是我直接运行”/usr/local/apache/bin/apxs”这个脚本, 得到下面的错误提示:
bash: ./apxs: /replace/with/path/to/perl/interpreter: bad interpreter: No such file or directory
哦, 给人的感觉很像仍然是apxs程序有问题, 但问题在哪里呢? “interpreter”是什么呢? interpreter是”解释程序”!
嗯, 看来我们接近答案了, 运行”head -1 /usr/local/apache/bin/apxs”得到下面内容:

!/replace/with/path/to/perl/interpreter -w

天啊, 这里没有指明正确的perl执行程序的位置! 原来这就才是真正的问题原因所在!!!
找到原因了好办,用vi打开/usr/local/apache/bin/apxs,将

!/replace/with/path/to/perl/interpreter -w替换为#!/usr/bin/perl -w。

                                    图3  perl错误截图

如果出现图4错误:

                                    图4 libxml错误

安装他即可:
yum install libxml2
yum install libxml2-devel

四、LAMP结构测试
在Apache服务器的htdocs中:
新建index.php

 <?php
    echo phpinfo();
   ?>

然后在浏览器中访问:服务器ip地址+index.php

出现如下界面,即配置成功,连接mysql的部分,需要自己写php sql代码进一步验证。
至此,LAMP环境的搭建完成。

                                图5 LAMP环境搭建成功截图

由于小编初出茅庐,文章难免有错误之处,还望指正,谢谢合作。
部分参考资料源自网络或网友博客,感谢提供资料。

以上是关于Linux服务器搭建之<PHP;的主要内容,如果未能解决你的问题,请参考以下文章

Linux之搭建memcache缓存服务器

搭建php程序之Linux 安装PHP集成环境宝塔面板

搭建php程序之Linux 安装PHP集成环境宝塔面板

搭建php程序之Linux 安装PHP集成环境宝塔面板

小论坛 之Linux服务器搭建Apache PHP mysql 环境

Linux学习笔记之搭建LNMP服务器环境