基于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