生产环境LAMP安装部署标准文档2011-10-16完成

收拾电脑 发现2011年的文档 贴出来分析给大家

created by---张陆亚
########################################################
一:适合Linux操作系统版本:CENTOS 5.4/5.5 64位OS

二:软件安装环境要求:

Administration Tools
Editors
System Tools
Text-based Internet
X Software Development
Base
Development Libraries
Development Tools

三:软件包版本要求
mysql-5.0.56.tar.gz
php-5.2.14.tar.gz
httpd-2.2.21.tar.gz
libiconv-1.13.1.tar.gz

########################################################
软件包存放于/tools
mkdir /tools
cd /tools

[LAMP安装部署之一 MYSQL安装]
groupadd mysql
useradd -g mysql -M -s /sbin/nologin mysql
cat /etc/passwd|grep mysql

tar zxvf mysql-5.0.56.tar.gz
cd mysql-5.0.56
./configure --prefix=/usr/local/mysql-5.0.56 \
--with-unix-socket-path=/usr/local/mysql-5.0.56/tmp/mysql.sock \
--localstatedir=/data/mysqldata\
--enable-assembler \
--enable-thread-safe-client \
--with-mysqld-user=mysql \
--without-debug \
--with-pthread \
--enable-assembler \
--with-extra-charsets=complex \
--with-readline \
--with-ssl \
--with-embedded-server \
--enable-local-infile \
--with-plugins=partition,innobase \
--with-plugin-PLUGIN \
--with-mysqld-ldflags=-all-static \
--with-client-ldflags=-all-static
make
make install

/bin/cp support-files/my-medium.cnf /etc/my.cnf
mkdir -p /data/mysqldata
/usr/local/mysql-5.0.56/bin/mysql_install_db --user=mysql
chgrp -R mysql /usr/local/mysql-5.0.56
/usr/local/mysql-5.0.56/bin/mysqld_safe --user=mysql &
/bin/cp support-files/mysql.server /etc/init.d/mysql-5.0.56
chmod 755 /etc/init.d/mysql-5.0.56
echo "export PATH=$PATH:/usr/local/mysql-5.0.56/bin/" >> /etc/profile
source /etc/profile
echo "/etc/init.d/mysql-5.0.56 start" >> /etc/rc.local
/usr/local/mysql-5.0.56/bin/mysqladmin -uroot password admin#1
cd ..

vi /etc/my.cnf(在[mysqld]下面添加如下内容,这个是经验之谈,慢慢体会吧)
skip-name-resolve
max_connections = 3000

MYSQL的数据文件最好不要存放在/目录下,不然后期数据量很大的情况下会引起
不必要的麻烦,这些是经验之谈,虚拟机上可以随意的测试,但是线上的东西要谨
慎,小小的失误,可能会引起许多不必要的麻烦.
#------------------------------------------------------------------------------------------------
[LAMP之二APACHE安装部署]
tar zvfx httpd-2.2.21.tar.gz
cd httpd-2.2.21
./configure --prefix=/usr/local/apache2.2.21 \
--enable-deflate \
--enable-headers \
--enable-modules=so \
--enable-so \
--enable-rewrite \
--enable-cgi \
--enable-file-cache \
--enable-cache \
--enable-disk-cache \
--enable-mem-cache
make
make install
cd ..
echo "/usr/local/apache2.2.21/bin/apachectl start" >> /etc/rc.local
注意,此处我采用的是perfork模式

useradd www -M -s /sbin/nologin
cat /etc/passwd|grep www

vi /usr/local/apache2.2.21/conf/httpd.conf
#------------------------------------------------------------------------------------------------
1:默认用户和组daemon修改为apache

66 User www
67 Group www

2:98行修改成这样
98 ServerName 127.0.0.1:80

3:将如下
105 DocumentRoot "/usr/local/apache2.2.21/htdocs"
132 <Directory "/usr/local/apache2.2.21/htdocs">

中的/usr/local/apache2.2.21/htdocs替换成/data

4:将371行打开并调优perfork模式
371 #Include conf/extra/httpd-mpm.conf

<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 10
MaxSpareServers 15
ServerLimit 2000
MaxClients 1000
MaxRequestsPerChild 5000
</IfModule>

5:定义虚拟主机路径,在最后添加

INCLude conf/vhost/
mkdir -p /usr/local/apache2.2.21/conf/vhost

6:将次做如下修改:目的是禁止显示站点目录功
<Directory "/data">
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>


/usr/local/apache2.2.21/bin/apachectl -t
/usr/local/apache2.2.21/bin/apachectl stop
/usr/local/apache2.2.21/bin/apachectl start
#------------------------------------------------------------------------------------------------

[LAMP之PHP安装部署]
tar zvfx libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/libiconv
make
make install
cd ..

tar zvfx php-5.2.14.tar.gz
cd php-5.2.14
./configure --prefix=/usr/local/php-5.2.14 \
--with-apxs2=/usr/local/apache2.2.21/bin/apxs \
--with-mysql=/usr/local/mysql-5.0.56 \
--with-ttf \
--with-xmlrpc \
--with-openssl \
--with-zlib \
--with-freetype-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-iconv=/usr/local/libiconv \
--enable-short-tags \
--enable-sockets \
--enable-zend-multibyte \
--enable-soap \
--enable-mbstring \
--enable-static \
--enable-gd-native-ttf \
--with-curl

make
make install
cp php.ini-recommended /usr/local/php-5.2.14/lib/php.ini
cd ..

整合apache+php
#------------------------------------------------------------------------------------------------

vi /usr/local/apache2.2.21/conf/httpd.conf +310 (添加对php解析支持内容)

AddType application/x-httpd-php .php .php3
AddType application/x-httpd-php-source .phps

#168行处,添加index.php
DirectoryIndex index.php index.html

/usr/local/apache2.2.21/bin/apachectl -t #检查语法错误,正常发情况下会有如下显示
#------------------------------------------------------------------------------------------------
测试php

vi /data/info.php
<?php
phpinfo();
?>

/usr/local/apache2.2.21/bin/apachectl graceful
http://10.0.0.26/info.php 测试ok!


测试数据库
vi /data/testdb.php

<?php
$link=mysql_connect('localhost','root','jesse');
if(!$link) echo "fail";
else echo "success";
mysql_close();
?>

http://10.0.0.26/testdb.php
测试ok!

至此:lamp搭建完成!

posted @ 2014-12-06 14:33  study-notes  阅读(133)  评论(0编辑  收藏  举报