编译C源代码:
前提:提供开发工具及开发环境
通过“包组”提供开发组件,CentOS 6: "Development Tools", "Server Platform Development"
第一步 configure脚本:
选项:指定安装位置、指定启用的特性
--help: 获取其支持使用的选项
安装路径设定:--prefix= --sysconfdir=
Optional Features: 可选特性
--disable-FEATURE --enable-FEATURE
Optional Packages: 可选包
--with-PACKAGE --without-PACKAGE
第二步: make
第三步: make install
首先编译安装apache(httpd-2.4.10) 在centos6上提供的apr的版本不能满足httpd-2.4的版本,首先得编译apr
apr: apache portable runtime (一个统一的平台接口,apr可以使httpd运行在linux,unix,windows上)
需要编译的包有两个: apr-1.4+, apr-util-1.4+
操作命令如下:
tar xf apr-1.5.0.tar.bz2 cd apr-1.5.0 ./configure --prefix=/usr/local/apr make && make install
tar xf apr-util-1.5.3.tar.bz2 cd apr-util-1.5.3 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
安装开发包组: yum -y groupinstall "Development Tools" "Server Platform Development"
需要解决的依赖包:yum -y install pcre-devel
tar xf httpd-2.4.10.tar.bz2 cd httpd-2.4.10 ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --
enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with-zlib -
-with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-mpm=prefork --enable-cache --
enable-disk-cache --enable-mem-cache --enable-file-cache
make && make install
编译安装php-5.4.40
操作命令如下:
需要解决的依赖包:libxml2-devel bzip2-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel(要安
装epel源)
tar xf php-5.4.40.tar.bz2 cd php-5.4.40 ./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-
mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --enable-mbstring --with-png-dir
--with-jpeg-dir --with-freetype-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets
--with-apxs2=/usr/local/httpd/bin/apxs --with-gd
--with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2
--with-config-file-scan-dir=/etc/php.d (指启动php时还需读取该目录下的配置文件)
(PHP发布了5.3版本后,在该版本当中,提供了一个mysqlnd库,用来访问MySQL数据库,大大提升了PHP的数据库访问性能,可以
不用事先安装mariadb,并且支持mariadb作为一台独立的服务器)
make && make install
复制源码的配置文件到指定的配置文件路径:cp php.ini-production /etc/php.ini
配置httpd能识别php的请求
添加这两项
重启httpd: /usr/local/httpd/bin/apachectl restart
编译安装mariadb-5.5.48(作为一台独立服务器): useradd -r -s /sbin/nologin -M mysql mkdir -pv /mydata/data (创建
mysql数据目录)
首先创建一个逻辑卷操作命令如下:
安装开发包组: yum -y groupinstall "Development Tools" "Server Platform Development"
yum -y install libevent-devel boost-devel
pvcreate /dev/sdb vgcreate myvg /dev/sdb lvcreate -n mylv -L 110G myvg
mke2fs -t ext4 /dev/myvg/mylv vim /etc/fstab
mount -a (重读/etc/fstab)
tar xf mariadb-5.5.48.tar.gz -C /usr/local/ cd /usr/local/ ln -sv mariadb-5.5.48 mysql cd mysql
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -
DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -
DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -
DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -
DDEFAULT_COLLATION=utf8_general_ci
make && make install
cd /usr/local/mysql chown -R root:mysql /usr/local/mysql/ chown -R mysql:mysql /mydata/data
cp support-files/my-large.cnf /etc/my.cnf (提供配置文件)
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/mydata/data (初始化数据库)
cp support-files/mysql.server /etc/rc.d/init.d/mysqld (提供启动配置文件)
chmod +x /etc/rc.d/init.d/mysqld chkconfig mysqld on
echo "export PATH=/usr/local/mysql/bin:$PATH" > /etc/profile.d/mysql.sh exec bash (重启bash进程)
vim /etc/my.cnf
php加速器:它的目的就是避免PHP每次请求都重复编译PHP代码,达到一次编译多次使用的效果,使用加速器比无加速器请求时间
快了3倍左右
配置命令;
tar xf xcache-3.2.0.tar.bz2 cd xcache-3.2.0 /usr/local/php/bin/phpize(在当前目录生成configure脚本了解php环境)
./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config (启动xcache,并指定执行php配置的程序文件)
make && make install
mkdir /etc/php.d cp xcache.ini /etc/php.d/ /usr/local/httpd/bin/apachectl restart
补充:echo "<?php phpinfo(); ?>" > /usr/local/httpd/htdocs/index.php
去浏览器查看是否安装了xcache