CentOS 5.5 LNMP环境搭建



基于CentOS 5.5搭建LNMP环境 

 一、安装准备 1.1平台环境:

CentOS 5.4 x86_64 GNU/Linux          nginx-0.8.54    php-5.3.3   mysql-5.1.50
      1.2系统安装及分区:  

   1.2.1操作系统安装:       安装过程中选择最少的包,采用文本模式安装,不安装图形。
1.2.3系统软件包安装规范        

系统约定:                  软件源代码包存放位置             /usr/local/src                  源码包编译安装位置(prefix)     /usr/local/software_name                  脚本以及维护程序存放位置       /usr/local/sbin
   Nginx 运行账户           www:www


二、系统环境初始化

                     1. 检查系统是否正常

                 # more /var/log/messages(检查有无系统级错误信息)

                 # dmesg (检查硬件设备是否有错误信息)

                 # cat /proc/cpuinfo (检查CPU频率是否正常)

                 # top (1检测CPU核数是否正常,内存大小是否正常)

                 # ifconfig(检查网卡设置是否正确)

                 # ping www.163.com(检查网络是否正常)

        2. 关闭不需要的服务

       # ntsysv

        以下仅列出需要启动的服务,未列出的服务一律推荐关闭:

             atd

                crond

                irqbalance

                microcode_ctl

                network

                sendmail

                sshd

                syslog

               关闭SElinux:修改/etc/selinux/config文件中的SELINUX= disabled

   4. 使用 yum 程序安装所需开发包(以下为标准的 RPM 包名称)

yum -y install libxml2-devel gd-developenssl-devel ncurses-devel libjpeg-devel \

           freetype-devel fontconfig-devellibpng-devel libtiff-devel expect \

           bison bzip2-devel libmcrypt-devel pcre-develzlib-devel            libevent-devel \

           curl-devel gettext-devel e2fsprogs-develkrb5-devel libmhash-devel \

           libpng-devel.i386 libjpeg-devel.i386libtool-ltdl-devel            compat-libstdc++-33 gcc gcc-c++ autoconf automake

           sysstat dstat iptraf minicomlszrz elinks net-snmp ltrace strace nscd ntp

          定时校正服务器时钟,定时与中国国家授时中心授时服务器同步

          # crontab -e

          加入一行:

           15 3 * * * /usr/sbin/ntpdate 210.72.145.44 > /dev/null 2>&1

           下载相关软件包

           #cd /usr/local/src                         nginx-0.8.54               php-5.3.3 

              mysql-5.1.50                ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz

                 eaccelerator-0.9.6.1.tar.bz2

                 memcache-2.2.6.tar.gz

            memcached-1.4.5.tar.gz

                  因为没有固定源下载地址 就不提供下载地址了抱歉

              部分配置文件我上传上来供大家参考

                 将conf文件上传到/usr/local/src/

[root@TEST src]# useradd -M www -s /nologin   开www账户

[root@TEST src]# useradd -M mysql -s/nologin   开数据库账户

##############################

# Install WebServer#

##############################

[root@TEST src]# tar zxvfnginx-0.8.54.tar.gz

./configure –prefix=/usr/local/nginx \

–without-select_module \

–without-poll_module \

–with-http_realip_module \

–with-http_gzip_static_module \

–with-http_stub_status_module \

–without-http_ssi_module \

–without-http_userid_module \

–without-http_geo_module \

–without-http_map_module \

–without-http_uwsgi_module \

–without-http_scgi_module \

–without-http_memcached_module \

–without-mail_pop3_module \

–without-mail_imap_module \

–without-mail_smtp_module

[root@TEST nginx-0.8.54]# make &&make install

[root@TEST src]# mkdir -p/usr/local/nginx/conf/vhosts

[root@TEST src]# cp conf/nginx/vhost-sample/usr/local/nginx/conf/vhosts

/[root@TEST src]# cp -rf conf/www//usr/local/nginx/

[root@TEST src]# cp conf/nginx/nginx.conf /usr/local/nginx/conf/

[root@TEST src]# cp conf/nginx/nginx.init/etc/rc.d/init.d/nginx

[root@TEST src]# chown -R www:www/usr/local/nginx/www/

[root@TEST src]# chmod 755 /etc/init.d/nginx

[root@TEST src]# chkconfig –add nginx

[root@TEST src]# chkconfig –level 3 nginxon

[root@TEST nginx]# vim/usr/local/nginx/conf/vhosts/vhost-sample

[root@TEST src]# service nginx start

################################

Install Mysql server ################################

[root@TEST src]# tar zxvfmysql-5.1.50-linux-x86_64-icc-glibc23.tar.gz

[root@TEST src]# mv/usr/local/src/mysql-5.1.50-linux-x86_64-icc-glibc23 /usr/local/

[root@TEST local]# ln -s /usr/local/mysql-5.1.50-linux-x86_64-icc-glibc23//usr/local/mysql

[root@TEST local]# chown -R mysql:mysql/usr/local/mysql

[root@TEST local]# chown -R mysql:mysql/usr/local/mysql-5.1.50-linux-x86_64-icc-glibc23/

[root@TEST local]# cd /usr/local/mysql

[root@TEST mysql]#./scripts/mysql_install_db –user=mysql


[root@TEST mysql]# cp./support-files/mysql.server /etc/rc.d/init.d/mysqld

[root@TEST mysql]# chmod 755/etc/rc.d/init.d/mysqld

[root@TEST mysql]# chkconfig –add mysqld

[root@TEST mysql]# chkconfig –level 3mysqld on

[root@TEST mysql]# cp./support-files/my-huge.cnf /etc/my.cnf

[root@TEST mysql]# vim /etc/my.cnf

[mysqld] 段增加datadir= /usr/local/mysql/

dataskip-innodb

wait-timeout= 10

max_connections= 512

max_connect_errors= 10000000

[mysqld] 段修改

max_allowed_packet= 16M

thread_cache_size= CPU个数*2 log-bin 注释

[root@TEST mysql]# service mysqld start

[root@TEST mysql]#/usr/local/mysql/bin/mysqladmin -uroot password “password”

 

 

###############################

# Install php#

###############################

[root@TEST src]# tar jxvf php-5.3.3.tar.bz2

[root@TEST src]# cd php-5.3.3

./configure –prefix=/usr/local/php \

–with-config-file-path=/usr/local/php/etc \

–with-mysql=/usr/local/mysql \

–with-gd \

–enable-gd-native-ttf \

–enable-exif \

–with-png-dir \

–with-jpeg-dir \

–with-freetype-dir \

–with-iconv-dir \

–with-curl \

–with-zlib-dir \

–with-bz2 \

–enable-zend-multibyte \

–enable-mbstring \

–with-libxml-dir \

–enable-sockets \

–enable-ftp \

–without-sqlite \

–without-sqlite3 \

–without-pdo-sqlite \

–disable-ipv6 \

–with-mcrypt \

–enable-fpm \

–with-libevent-dir

[root@TEST php-5.3.3]# make && makeinstall 

[root@TEST php-5.3.3]# cd /usr/local/src/

[root@TEST src]# cp conf/php/php.ini-5.3/usr/local/php/etc/php.ini

                                 安装补丁

[root@TEST src]# mkdir /usr/local/php/ext

#################################

Install ZendGuardLoader #################################

[root@TEST src]# tar zxvfZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz

[root@TEST src]# cdZendGuardLoader-php-5.3-linux-glibc23-x86_64

[root@TESTZendGuardLoader-php-5.3-linux-glibc23-x86_64]# cp php-5.3.x/ZendGuardLoader.so/usr/local/php/ext/

#################################

Install eaccelerator #################################

[root@TEST src]# tar jxvfeaccelerator-0.9.6.1.tar.bz

2[root@TEST src]# cd eaccelerator-0.9.6.1

[root@TEST eaccelerator-0.9.6.1]#/usr/local/php/bin/phpize

./configure–enable-eaccelerator –with-php-config=/usr/local/php/bin/php-config

[root@TEST eaccelerator-0.9.6.1]# make

[root@TEST eaccelerator-0.9.6.1]# cpmodules/eaccelerator.so /usr/local/php/ext/

#################################

Install Memcache #################################

[root@TEST src]# tar zxvf memcache-2.2.6.tar.gz

[root@TEST src]# cd memcache-2.2.6

[root@TEST memcache-2.2.6]#/usr/local/php/bin/phpize

./configure–enable-memcache –with-php-config=/usr/local/php/bin/php-config

[root@TEST memcache-2.2.6]# make

[root@TEST memcache-2.2.6]# cp modules/memcache.so/usr/local/php/ext/

#################################

Install Memcached #################################

[root@TEST src]# tar zxvfmemcached-1.4.5.tar.gz

[root@TEST src]# cd memcached-1.4.5./configure –prefix=/usr/local/memcached–with-libevent

[root@TEST memcached-1.4.5]# make&& make instal

l##############################

Config php-fpm ##############################

[root@TEST src]# cp conf/php/php-fpm-5.3/etc/init.d/php-fpm

[root@TEST src]# chmod 755/etc/init.d/php-fpm

[root@TEST src]# chkconfig –add php-fpm

[root@TEST src]# chkconfig –level 3php-fpm on

[root@TEST src]# cpconf/php/php-fpm.conf-5.3 /usr/local/php/etc/php-fpm.conf

最后启动服务

[root@TEST src]#service php-fpm start