你的位置:首页 > 操作系统

[操作系统]centos6.7下编译安装lamp环境


编译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

操作命令如下:

需要解决的依赖包:liblibmcrypt-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-lib

--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/     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 mysql:mysql /usr/local/mysql/   chown -R root: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进程)

 

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