centos-6.4
apache-2.2.29
php-5.4.15
mysql-5.5.28
使用centos-6.4的yum源安装的libxml是2.7.6,如果需要使用PHPExcel生成Excel2007的文件,就必须到官网下载源码安装。地址:http://www.xmlsoft.org/
#解压,并进入目录 tar -zxvf libxml2-NN.tar.gz cd libxmlNN #默认安装 ./configure make; make install
也许在make的时候会报错,可以直接忽略,继续make install。安装完成,使用以下命令如果查看到版本信息表示安装成功
xml2-config --version
使用如下命令可以查看centos自带的httpd版本,也看用于测试是否成功卸载
#查看httpd版本信息 httpd -v #如果httpd存在,则卸载 yum -y remove httpd #再次检测是否成功卸载 httpd -v
#gcc, c++编译器 yum install gcc yum install gcc-c++ #如果安装apache时需要开启deflate模块,则需要安装zlib yum install zlib-devel #安装编译php所需软件,具体可参考php源码包里的INSTALL文件 yum install autoconf yum install automake yum install libtool yum install flex yum install bison yum install libxml2 yum install libxml2-devel #安装编译mysql所需软件 yum install cmake yum install gmake yum install ncurses-devel
可以将apache, php, mysql的源码保存到linux上,后期增加新模块需要编译时使用得到。
#step1 没有回车 ./configure --prefix=/usr/local/apache2 --enable-deflate=shared --enable-rewrite=shared --enable-so --enable-headers #step2, step3 make make install
#查看版本信息 /usr/local/apache2/bin/httpd -v #启动apache /usr/local/apache2/bin/apachectl start #如果一下命令能获得内容,表示apache成功启动 curl http://localhost/
#创建快捷命令 cp /usr/local/apache2/bin/apachectl /usr/sbin/ cp /usr/local/apache2/bin/apachectl /usr/sbin/httpd #复制完成以后可以通过service httpd restart来重启apache cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd #设置httpd服务在centos启动时一同启动,在执行命令前需要修改httpd文件,具体参考更多说明[4] chkconfig --add httpd chkconfig httpd on
1. 关于configure的选项可通过执行命令 ./configure --help 了解更多
2. 关于configure的选项可通过执行命令可以通过官方网站来了解更多
http://httpd.apache.org/docs/2.2/programs/configure.html
3. 如果需要重新编译,那么在源码目录首先执行make distclean再进行编译,记得编译时须指定apache的安装目录
4. 重新编译apache时,需要指定apache的安装目录,因为我使用的不是默认目录。接着需要enable你需要启用的模块,以前已经加载的模块不需要重新enable一次,因为apache的每个模块是独立的记载的。这和php不同。
5. 关于如何修改httpd文件 http://xiedexu.cn/service-httpd-support-chkconfig.htm
6. 默认apache的配置文件在/usr/local/apache2/conf/
7. 如果外网无法访问,应该是80端口未开放
#step1 没有回车 ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs #step2, step3 make make install
#进入php安装源码包,创建php.ini文件到默认配置文件位置 #如果需要修改php配置文件存放路径,可以参考configure里 --with-config-file-path 选项 cp /PHP-SOURCE-CODE/php.ini-development /usr/local/php/lib/php.ini #创建快捷方式,这样在任意路径都可以通过php -v查看php的版本信息 ln -s /usr/local/php/bin/php /usr/sbin/php #测试 cd / php -v
找到AddType,加上新行,使其能够解析php文件
AddType application/x-httpd-php .php
找到DirectoryIndex行,修改如下,使其默认能识别index.php
DirectoryIndex index.html index.php
1. 关于configure的选项可通过执行命令 ./configure --help 了解更多
2. 如果需要重新编译,那么在源码目录首先执行make distclean再进行编译,记得编译时须指定apache的安装目录
3. 官方提供的php在apache2.x下安装说明 http://php.net/manual/zh/install.unix.apache2.php
4. 如果需要重新编译php,需要把以前已经编译的模块全部重新编译,一个简单的方式可以通过复制phpinfo()里的Configure Command,然后加上需要新编译的模块。因为php源码编译是将所有的模块都集中编译到libphp5.so这一个文件里,然后通过apache进行加载的。
# Preconfiguration setup # 添加mysql组以及mysql用户 groupadd mysql useradd -r -g mysql mysql # Beginning of source-build specific instructions # 安装 cmake . make make install # End of source-build specific instructions # Postinstallation setup # 设置安装目录所属组和用户为mysql cd /usr/local/mysql chown -R mysql . chgrp -R mysql . # 初始化 scripts/mysql_install_db --user=mysql #更改为安全的权限 chown -R root . #设置mysql数据库的保存目录为mysql用户 chown -R mysql data bin/mysqld_safe --user=mysql &
#添加mysqld服务 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld #这样就可以使用如下命令来重启mysql了 service mysqld restart #创建快捷方式,这样在任意路径下都可以执行mysql ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql #复制配置文件 cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf #设置mysql服务在centos启动时一同启动 chkconfig --add mysqld chkconfig mysqld on