CentOS 5.5上LNMP(spawn-fcgi)平台搭建

TahoeCentOS 2010-10-30

服务器换机房,且需要重装系统。老大要求。在服务器上安装CentOS5.5上安装基本软件外其他一概不装。以最小化安装方式。。。于是环境搭建就交给我了。omg。之前装过一次惨不忍睹,全编译安装才用gcc一个包一个包的编译。。找包的依赖库头都是大的。折腾了近一个星期。。。好吧。这次老大好歹还发了个安装步骤及需要的包。方便点了。
好了。开始。

首先安装包:
|--php依赖包
|--eaccelerator-0.9.6.1.tar.bz2
|--freetype-2.4.2.tar.gz
|--gd-2.0.35.tar.gz
|--gettext-0.18.1.1.tar.gz
|--jpegsrc.v8b.tar.gz
|--libiconv-1.13.1.tar.gz
|--libmcrypt-2.5.7.tar.gz
|--libpng-1.2.44.tar.gz
|--libxml2-2.7.7.tar.gz
|--mcrypt-2.6.8.tar.gz
|--mhash-0.9.9.9.tar.gz
|--mysql
|--mysql-5.0.89-linux-i686-glibc23.tar.gz
|--nginx
|--nginx-0.8.49.tar.gz
|--pcre-8.10.tar.gz
|--php扩展
|--PDO_MYSQL-1.0.2.tgz
|--php-5.2.14.tar.gz
|--ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
|--zlib-1.2.5.tar.gz
|--spawn管理包
|--spawn-fcgi-1.6.3.tar.gz
|--vsftpd
|--vsftpd-2.3.2.tar.gz

~~~

好了系统安装好了。默认是按照了ssh的。虽然可以用psftp.exe通过ssh来上传文件;但ftp还是必须的。所以我首先安装的是ftp;当然vsftpd.2.3.3.tar.gz还是通过psftp上传上去的。安装方法看这里:CentOS 5.5上Vsftpd安装使用

首先把这些软件都上传到服务器某个目录下。我是这样安装的lnmp都是安装在我自定义的目录下的。所以先建了这些目录。

/opt/software #存放所以软件包的地方
/opt/wwwroot  #站点文件存放地方
/opt/module/   # mysql nginx php安装的文件的目录
/opt/data/   # data目录存放入mysql data数据。www.linuxidc.com或备份数据

一、安装nginx

groupadd www

useradd -g www www
安装先决条件
tar -zxvf pcre-8.10.tar.gz
cd pcre-8.10
./configure
make&&make install

tar zxvf nginx..gz

cd nginx
./configure --user=www --group=www --prefix=/opt/module/nginx --with-http_stub_status_module --with-http_ssl_module
make&make install

启动nginx

/opt/module/nginx/sbin/nginx &
注意:安装好后,且确定启动了。那么必须要在iptables防火墙中开启80端口。不然可能怎么都看不到“welcome to nginx”

修改iptables方法如下。

可以先查看iptables端口状态;/etc/init.d/iptables status
vi /etc/sysconfig/iptables
可以看到22端口的那一行。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
如果你要添加80端口那么直接复制22这一行。粘贴到-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 的上面,同样如果你要开发3306端口那么也这样复制一段把22修改为3306则可。保存。iptables必须要重启来能使用。service iptables restart;于是你就可以看到welcome to nginx了。

二、安装mysql
mysql-5.0.89-linux-i686-glibc23.tar.gz 由于mysql是二进制包。所以还是比较方便的。
直接解压。然后移动。

mv mysql-5.0.89-linux-x86_64-glibc23 /opt/module/mysql

cd /opt/module/mysql
groupadd mysql
useradd -g mysql mysql
chown -R mysql .
chgrp -R mysql .
chown -R root .

.scripts/mysql_install_db --user=mysql --basedir=/opt/module/mysql --datadir=/opt/data/mysql

cd /opt/data/mysql/
cp /opt/module/mysql/support-files/my-huge.cnf /etc/my.cnf
cp /opt/module/mysql/support-files/mysql.server  /etc/rc.d/init.d/mysqld

chmod 755 /etc/rc.d/init.d/mysqld
chkconfig –add mysqld
chkconfig mysqld on

启动 /opt/module/mysql/bin/mysqld_safe &


注:这里可能会出现错误。

[root@localhost mysql]# Starting mysqld daemon with databases from /opt/module/mysql/data
STOPPING server from pid file /opt/module/mysql/data/localhost.localdomain.pid
101029 17:49:43  mysqld ended
这是因为basedir与datadir目录未设置的问题。那么在/etc/my.cnf  [mysqld]里添加basedir = /opt/module/mysql   datadir=/opt/data/mysql  (这都是我的目录,相应改成你的目录)

再次启动。就应该可以了。

相关推荐

ganyouxianjava / 0评论 2012-05-31