|
收拾电脑 发现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搭建完成! |
|
|