首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

Linux+Apache2+PHP5+Mysql环境筹建

2013-03-01 
Linux+Apache2+PHP5+Mysql环境搭建本案例中很多组件都需要使用yum安装组件,如果你网络太慢或不能上公网,可

Linux+Apache2+PHP5+Mysql环境搭建

本案例中很多组件都需要使用yum安装组件,如果你网络太慢或不能上公网,可能需要设置本地安装包镜像。如下:

在/etc/yum.repos.d目录下,加入本地仓库的配置:

local.repo (注意,文件名需要以.repo结尾)

?

[centos6.3]

name=centos6.3

baseurl= ftp://192.168.30.33/pub/centos/6.3/x86_64/

gpgcheck=0

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

?

?

2.安装Mysql

因为会用的是CentOS,所以直接使用yum安装MySql。CentOS6.3对应的版本是5.1.61。

[root@localhost ~]# yum install mysql

......

安装完成后,我们试试先

# mysql

……

?

mysql>?

如果能正常进入,则安装成功了。

设置mysql的账户密码先:

?

mysqladmin -u root password

******

?

?

3.安装apache

Apache的安装使用源代码方式安装,并打开动态对象共享(DSO)

# unzip?httpd-2.2.23.tar.gz

# cd?httpd-2.2.23

# ./configure --enable-so

......

# make

# make install

安装完成后,默认安装路径在:/usr/local/apache2

?

4.安装PHP

热,这就是出错问题最多的地方,呵呵。的确不会PHP,所以基本没有搭建过该环境的原因。

?

?

# unzip?php-5.3.22.tar.gz

# cd?php-5.3.22

# ./configure --prefix=/usr/local/php --with-mysql=/usr/bin/ --with-mysqli=/usr/bin/mysql_config --with-apxs2=/usr/local/apache2/bin/apxs --enable-sockets

这个配置是最重要的,反复试了多次,终于排除问题,正确了。

    --prefix=/usr/local/php : 安装目录指定--with-mysql=/usr/bin/ --with-mysqli=/usr/bin/mysql_config: 指定Mysql环境(出错最多的地方)--with-apxs2=/usr/local/apache2/bin/apxs: apache关联,主要是PHP支持模块直接编译到apache的modules目录,同时修改httpd.conf配置文件,loadModule......

……

配置这部如果中间有错误,请参加后面的错误处理。

?

# make

# make install

安装完成。

?

5.配置Apache和PHP

?

PHP配置文件

拷贝php的默认配置文件,本来是安装PHP之前做的,我结果放到后面做了,也关系不大。

cp php.ini-development /usr/local/lib/php.ini

需要修改配置文件,配置PHP可以修改该文件,我反正不会。

?

APACHE配置文件

?

进入httpd.conf配置文件进行配置。

?

检查是否有:LoadModule php5_module modules/libphp5.so 。一般是有的,因为PHP编译的时候关联了apache。

?

告知 Apache 将特定的扩展名解析成 PHP

php结尾的文件

?

<FilesMatch \.php$>

? ? SetHandler application/x-httpd-php

</FilesMatch>

?

php+数字结尾的文件

<FilesMatch "\.ph(p[2-6]?|tml)$">

? ? SetHandler application/x-httpd-php

</FilesMatch>

?

phps结尾的文件已源代码方式处理

<FilesMatch "\.phps$">

? ? SetHandler application/x-httpd-php-source

</FilesMatch>

?

?

添加目录默认文件index.php

?

<IfModule dir_module>

? ? DirectoryIndex index.html index.php

</IfModule>

?

如果你已经上传了PHP程序,可以设置WEB服务器根目录或者使用虚拟主机方式配置,这里假设程序目录为/www , 简单设置apache的根指向该目录

DocumentRoot "/www"

?

?

6.测试

打开浏览器,方式服务器IP即可。

?

我遇到的乱七八糟的问题些:

1、Apache的常规问题,启动和关闭的时候提示找不到ServerName什么的。

?

问题信息:httpd: Could not reliably determine the server's fully qualified domain name

解决方案:DNS没配置好. 如果不想配置DNS, 就在httpd.conf , 在最前加入 ServerName localhost:80 即可

?

?

2、PHP安装过程中

问题信息:configure error xml2-config not found. please check your libxml2 installation

?

解决方案:重新安装libxml2和libxml2-devel包, yum安装的时候发现新版本会提示更新,需要更新的可以更新,不要跳过就行了。

[root@rh-linux /]# yum install libxml2

[root@rh-linux /]# yum install libxml2-devel -y

?

问题信息:configure: error: Cannot find MySQL header files under /usr.

?

解决方案:在./configure 时加入参数:--with-mysql=/usr/bin/?--with-mysqli=/usr/bin/mysql_config

?

问题信息:configure: error: Cannot find libmysqlclient under /usr.

解决方案:问题是64位系统中 libmysqlclient 默认安装到了 /usr/lib64/mysql/ 目录下而/usr/lib 目录下没有相应文件,但是php编译时,要去 /usr/lib目录下查找。所以建个软连接即可

ln -s /usr/lib64/mysql/libmysqlclient.so.xx.0.0 /usr/lib/libmysqlclient.so

?

参考资料:http://www.php.net/manual/zh/install.unix.apache2.php

over!~

热点排行