Construction of lamp

Recently, I have built a lamp system under vagrant, and there are many problems. . .

Version: CentOS6.6+apache2.2+mysql5.6+php5.4+JDK1.7

 

yum install -y wget gcc  gcc-c++   make  cmake bison  bison-devel  libaio-devel  perl file patch mlocate flex diffutils readline-devel libcap-devel glibc-devel glib2-devel autoconf automake libgcrypt* libtool* openssl openssl-devel ncurses ncurses-devel libxml2  libxml2-* libmcrypt* curl curl-devel zlib zlib-devel bzip2*  gd gd-devel libjpeg libjpeg-devel  libpng  libpng-devel  mcrypt freetype* gettext gettext-devel pcre pcre-devel

 

 

1. Install JDK

 Uninstall the re-brought JDK: rpm -qa|grep jdk

If the package name appears: rpm -e filename 

tar zxvf  jdk-7u71-linux-x64.tar.gz

mv jdk1.7.0_71  /usr/local/java

vim  /etc/profile

Add at the end:

export JAVA_HOME=/usr/local/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

exit source /etc/profile

detect java -version

 

2. Installation of mysql5.6

单装mysql5.6:(yum install gcc gcc-c++ kernel-devel ncurses-devel bison cmake)

groupadd mysql

useradd -g mysql -s  /sbin/nologin mysql

mkdir -p /usr/local/mysql //create mysql installation directory;
mkdir -p /usr/local/mysql/data //create mysql data storage directory;

cd /usr/local/src

tar zxvf mysql-5.6.13.tar.gz

tar zxvf cmake-2.8.9.tar.gz

cd cmake-2.8.9

./bootstrap        make&&make install

cd ..

cd mysql-5.6.13

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysqldata -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_USER=mysql -DWITH_DEBUG=0

make&&make install

cp support-files/my-default.cnf  /etc/my.cnf      (mysql5.5与mysql5.6的默认配置文件不同 mysql5.5是my-medium.cnf)

cp support-files/mysql.server /etc/init.d/mysqld

chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql/data

vim /etc/my.cnf

在[mysqld]下

user=mysql
datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

//保存

cd /usr/local/mysql/

scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

添加mysql到系统服务:

chmod 755 /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

优化mysql命令调用:
vim /etc/profile
添加:
PATH=/usr/local/mysql/bin:$PATH

export PATH
:wq                                   //保存
source /etc/profile

启动mysql服务,并设置管理员账号密码
service mysqld start
mysqladmin -u root password '111111'

 

3、安装apache

首先安装apr与apr-util

<安装apr>

wget http://apache.fayea.com//apr/apr-1.5.2.tar.gz

tar -zxvf apr-1.5.2.tar.gz -C /usr/local/src/

cd /usr/local/src/apr-1.5.2/

./configure --prefix=/usr/local/apr

make&&make install

<安装apr-util>

wget http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz

cd apr-util-1.5.4

 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

make&&make install

理不清依赖关系的,建议yum install -y httpd大笑

cd httpd-2.2.29

./configure --prefix=/usr/local/httpd  --sysconfdir=/etc/httpd --enable-rewrite --enable-ssl --enable-cgi --enable-expires=shared --enable-mods-shared --enable-mudules=most --enable-mods-shared=all --enable-deflate --enable-speling --enable-cache --enable-file-cache --enable-disk-cache --enable-mem-cache --enable-so --enable-rewrite=shared --enable-static-support --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre

 

make&&make install

服务优化:

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd

vim /etc/init.d/httpd

# 在第二行下添加以下两行内容
 #chkconfig:345 85 15
 #description:Apache httpd
# wq!                               //保存文件并退出;
# chkconfig --add httpd              //添加到系统服务;
# chkconfig --level 235 httpd on    //设置系统级别为:235 为开机自启动

配置优化:

vim /etc/httpd/httpd.conf
找到:ServerName 80
ServerName 80    //取消掉注释符号,改为"ServerName localhost:80";

 

service httpd start

检测:netstat -lnp|grep 80

 

4、安装PHP

tar jxvf php-5.4.35.tar.bz2

cd php-5.4.35

./configure  --prefix=/usr/local/php --with-mysql=mysqlnd  --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --with-zlib --with-libxml-dir --enable-sockets --with-apxs2=/usr/local/httpd/bin/apxs  --with-mcrypt  --with-config-file-path=/etc  --with-config-file-scan-dir=/etc/php.d  --with-bz2  --with-gd  --with-mhash  --enable-gd-native-ttf  --with-iconv  --with-png-dir  --with-jpeg-dir  --with-gettext  --with-curl  --with-pear --with-freetype-dir  --enable-bcmath --enable-xml --enable-mbstring --enable-shmop --enable-soap  --enable-sysvsem  --enable-calendar --enable-zip --enable-ftp --enable-maintainer-zts

出现:configure: error: mcrypt.h not found. Please reinstall libmcrypt.

解决方法:

1、安装第三方yum源:wget http://www.atomicorp.com/installers/atomic
sh ./atomic

2、yum  install  php-mcrypt  libmcrypt  libmcrypt-devel

重新编译安装PHP

cp  /usr/local/src/php-5.4.35/php.ini-development  /etc/php.ini

vim  /etc/php.ini

找到如下内容,并修改
# ;default_charset = "UTF-8"      //取消掉注释符号";"将值设为"utf-8";
#  engine = On                    //将此选项的开关为 on ;
#  short_open_tag = on            //将此选项的开关为 on ,表示支持php标语;
# ;date.timezone = Asia/Shanghai  //取消掉注释符号";",将值设为"Asia/Shanghai"或"PRC";

make&&make install

5、lamp相关程序支持

编辑apache配置文件,让apache支持php解析

vim /etc/httpd/httpd.conf
首先查看是否有用支持php解析的模块
LoadModule php5_module        modules/libphp5.so
找到这行
AddType application/x-gzip .gz .tgz
添加这两行内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-sourece .phps
找到以下这句,在后面添加index.php 
DirectoryIndex index.html     //修改前
DirectoryIndex index.html index.php  //修改后

 

service httpd restart

 6、测试

编辑两个个测试页面
# vim /usr/local/httpd/htdocs/info.php  内容如下
<?php
 $conn=mysqli_connect('127.0.0.1','root','111111');
 if ($conn)
   echo "<h2>Success...</h2>";
 else
   echo "<h2>Failure...</h2>";
?>
<?php
phpinfo();
?>

 

 浏览器输入 http://ip/info.php   ,大功告成!

 

 7、顺便安装下redis、memcached扩展:

安装redis与其扩展:
下载:wget  https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz
tar zxvf  2.2.4.tar.gz
cd phpredis-2.2.4
/usr/local/php/bin/phpize   #用phpize生成configure配置文件
./configure --with-php-config=/usr/local/php/bin/php-config  #配置
make&&make install
安装完成之后,出现下面的安装路径
/usr/local/php/lib/php/extensions/no-debug-zts-20100525/
配置php支持
vim /etc/php.ini  #编辑配置文件,在最后一行添加以下内容
添加:
extension="redis.so"
wq!

 

安装memcached与其扩展

wget http://launchpadlibrarian.net/66527034/libmemcached-0.48.tar.gz

cd libmemcached-0.48
./configure --prefix=/usr/local/libmemcached  --with-memcached
make && make install cd memcached-2.2.0
/usr/local/php/bin/phpize
./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl make&&make install vim /etc/php.ini      添加:extension="memcached.so"
service httpd restart

 注:

php常见扩展相关的依赖包

openssl openssl-devel -用于编译php时添加    --with-openssl     选项;
libxml2  libxml2-*  -用于编译php时添加    --with-libxml-dir   选项;
libmcrypt*       -用于编译php时添加    --with-mcrypt     选项;
curl curl-devel    -用于编译php时添加    --with-curl      选项;
zlib  zlib-devel   -用于编译php时添加    --with-zlib[-dir]   选项;
bzip2*         -用于编译php时添加    --with-bz2       选项;
gd gd-devel      -用于编译php时添加    --with-gd       选项;
libjpeg libjpeg-devel -用于编译php时添加    --with-jpeg-dir    选项;
libpng libpng-devel  -用于编译php时添加    --with-png-dir     选项;
libpng libpng-devel  -用于编译php时添加    --with-zlib[-dir]   选项;
libXpm libXpm-devel  -用于编译php时添加    --with-xpm-dir     选项(可选);
freetype*        -用于编译php时添加    --with-freetype-dir   选项;
gettext gettext-devel -用于编译php时添加    --with-gettext     选项;
pcre  pcre-devel   -用于编译httpd时添加    --with-pcre      选项;
perl          -用于编译php时添加    --with-pear      选项;
mcrypt         -用于编译php时添加    --with-mhash      选项;

 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=327070832&siteId=291194637