搭建环境CentOS6.4
(Linux+Apache+MySQL+PHP)
安装MySQL
cd
/usr/local/src/ #下载mysql到/usr/local/src/
tar zxvf
/usr/local/src/mysql-5.1.73-linux-x86_64-glibc23.tar.gz #解压
useradd -s /sbin/nologin
mysql #建立mysql用户
mv mysql-5.1.73-linux-x86_64-glibc23
/usr/local/mysql #把解压完的数据移动到/usr/local/mysql
mkdir -p
/data/mysql #创建/data/mysql目录
chown -R mysql:mysql
/data/mysql #更改/data/mysql属组
cd
/usr/local/mysql #进入mysql
./scripts/mysql_install_db --user=mysql
--datadir=/data/mysql #初始化数据库
--user
定义数据库的所属主,
--datadir
定义数据库安装到哪里,建议放到大空间的分区上,这个目录需要自行创建。这一步骤很关键,如果你看到两个
“OK”
说明执行正确
echo
$? #看是否为0,是的话为没问题
ls
/data/mysql #查看生成的目录,目录为两个
cd
support-files/ #进入support-files/
cp my-medium.cnf
/etc/my.cnf #拷贝my-medium.cnf到/etc/my.cnf
###vim
/etc/my.cnf #进入vi进行编辑配置文件;
在socket =
/tmp/mysql.sock下面增加skip-locking;
把log-bin=mysql-bin
二进制日志注释#,log-bin=mysql-bin注释;server-id = 1注释
cp mysql.server
/etc/init.d/mysqld #拷贝启动脚本
vim
/etc/init.d/mysqld #进入vi进行编辑配置文件;###basedir增加/usr/local/mysql;datadir增加/data/mysql
datadir=/data/mysql
chkconfig --add
mysqld #启动脚本加入系统服务项
chkconfig mysqld
on #设定开机启动
service mysqld
start #启动mysql
安装Apache
cd
/usr/local/src/ #下载到指定目录
wget
http://labfile.oss.aliyuncs.com/httpd-2.2.29.tar.gz #wget下载
tar zxvf
httpd-2.2.29.tar.gz #解压
cd
httpd-2.2.29 #进入目录
yum install -y zlib-devel
yum install -y pcre pcre-devel apr apr-devel
#以防配置编译参数和编译时报错
./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre
#配置编译参数,
make #编译
make
install #安装
/usr/local/apache2/bin/apachectl
start #启动apache2
curl
localhost #查看是否工作,如出现
It
works!表示成功
cat /usr/local/apache2/build/config.nice #查看编译文件放在哪个目录
安装PHP
cd
/usr/local/src/ ##下载到指定目录
wget
http://am1.php.net/distributions/php-5.5.38.tar.gz #wget下载
tar zxf
php-5.5.38.tar.gz #解压
cd
php-5.5.38 #进入目录
./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/local/mysql \
--with-libxml-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-iconv-dir \
--with-zlib-dir \
--with-bz2 \
--with-openssl \
--with-mcrypt \
--enable-soap \
--enable-gd-native-ttf \
--enable-mbstring \
--enable-sockets \
--enable-exif \
--disable-ipv6
#配置编译参数
在这一步,遇到如下错误:
configure: error: xml2-config not found. Please check your libxml2
installation.
解决办法是:
yum install -y libxml2-devel
还有错误:
configure: error: Cannot find OpenSSL's
解决办法是:
yum install -y openssl openssl-devel
错误:
checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution
解决办法:
yum install -y bzip2 bzip2-devel
错误:
configure: error: png.h not found.
解决办法:
yum install -y libpng libpng-devel
错误:
configure: error: freetype.h not found.
解决办法:
yum install -y freetype freetype-devel
checking for fabsf… yes checking
for floorf… yes configure:
error: jpeglib.h not found.
解决方法:
yum install libjpeg-devel
php编译报错configure:
error: mcrypt.h not found. Please reinstall libmcrypt.
yum install -y epel-release
yum install -y libmcrypt-devel
两个不能一起安装,因为CentOs6默认的yum源没有
libmcrypt-devel这个包,只能借助epel的yum源,所以先安装epel,再安装
make #编译
make
install #安装
cp php.ini-production
/usr/local/php/etc/php.ini #拷贝配置文件
/usr/local/php/bin/php
-m #可以把PHP的模块列出来
/usr/local/php/bin/php
-i #可以查看PHP的参数
Apache结合PHP
在配置文件vim
/usr/local/apache2/conf/httpd.conf
# LoadModule foo_module
modules/mod_foo.so下面加上
LoadModule deflate_module modules/mod_deflate.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule
php5_module modules/libphp5.so
把ServerName
www.example.com:80改为localhost
/usr/local/apache2/bin/apachectl
-t #检验配置文件是否正确
/usr/local/apache2/bin/apachectl
start #启动apache
netstat -lnp |grep
httpd #查看是否启动
curl
localhost #
也可以使用curl命令简单测试,显示
It
works! 为正常 ,也可以在网站输入IP查看
vim
/usr/local/apache2/htdocs/1.php #测试是否正确解析php
写入:<?php
phpinfo();
?>
编辑vim
/usr/local/apache2/conf/httpd.conf,找到AddType
application/x-gzip .gz .tgz
在该行下面添加AddType
application/x-httpd-php .php
找到DirectoryIndex
index.html
将该行改为DirectoryIndex
index.html index.htm
index.php #修改配置文件
/usr/local/apache2/bin/apachectl
stop #停止apache
/usr/local/apache2/bin/apachectl
start #启动apache
在网页输入http://IP/1.php
cp
/usr/local/src/php-5.3.27/php.ini-development #生产线上拷贝php.ini-production
;
测试拷贝php.ini-development