nginx+LAMP(apache+php+mysql)
一、安装LAMP(apache+mysql+php)平台
1、安装apache
下载地址:http://sunsite.bilkent.edu.tr/pub/apache/httpd/httpd-2.2.9.tar.gz
# tar zxf httpd-2.2.9.tar.gz -C /usr/src
# cd /usr/src/httpd-2.2.9
# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all --enable-
rewrite --enable-ssl --with-ssl=/usr/lib --enable-auth-digest --enable-cgi --enable-suexec --
with-suexec-caller=daemon --with-suexec-docroot=/usr/local/apache/htdocs
# make && make install
# cd /usr/local/apache/conf
# ls
# cp httpd.conf httpd.conf.bak
# grep -v "#" httpd.conf.bak | grep -v "^$" > httpd.conf
# cd /usr/local/apache/htdocs
# vi /usr/local/apache/conf/httpd.conf (在最后编写)
NameVirtualHost 173.17.17.11
DocumentRoot /usr/local/apache/htdocs
ServerName www.benet.com
ErrorLog logs/www.benet.com.error.log
CustomLog logs/www.benet.com.access.log common
2、安装mysql
http://down1.chinaunix.net/distfiles/mysql-5.0.56.tar.gz
# useradd -M -s /sbin/nologin mysql
# tar zxf mysql-5.0.56.tar.gz -C /usr/src
# cd /usr/src/mysql-5.0.56
# ./configure --prefix=/usr/local/mysql
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# /usr/local/mysql/bin/mysql_install_db --user=mysql
# chown -R root.mysql /usr/local/mysql/
# chown -R mysql /usr/local/mysql/var
# echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
# ldconfig
# /usr/local/mysql/bin/mysqld_safe --user=mysql &
# 回车(Enter键)
# netstat -ntpl | grep 3306
# cp support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --level 35 mysqld on
# export PATH=$PATH:/usr/local/mysql/bin
# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
# mysqladmin -u root password "123456"
# mysql -u root -p
3、安装php
下载地址:http://www.php.net/downloads/
ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/libxml2-2.6.30.tar.gz
http://prdownloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz
http://sourceforge.net/projects/libpng/files/zlib/1.2.3/zlib-1.2.3.tar.gz
http://www.dnaphp.com/downloads/server/linux/18-gd-2-0-35-tar (gd)
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz
http://download.savannah.gnu.org/releases/freetype/freetype-2.3.5.tar.gz
http://sourceforge.net/projects/libpng/files/libpng15/1.5.6/libpng-1.5.6.tar.gz
http://www.p_w_picpathmagick.org/download/delegates/jpegsrc.v7.tar.gz
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz
所需库文件安装:
# tar zxvf libxml2-2.6.30.tar.gz
# cd libxml2-2.6.30
# ./configure --prefix=/usr/local/libxml2
# make && make install
# tar zxvf libmcrypt-2.5.8.tar.gz
# cd libmcrypt-2.5.8
# ./configure --prefix=/usr/local/libmcrypt
# make && make install
# cd /usr/local/src/libmcrypt-2.5.8/libltdl
# ./configure --enable-ltdl-install
# make && make install
# tar zxvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make && make install
# tar zxvf libpng-1.2.31.tar.gz
# cd libpng-1.2.31
# ./configure --prefix=/usr/local/libpng
# make && make install
安装GD2库前所需的jpeg6库文件,需要自己手动地创建安装需要的目录,它们在安装时不能自动创建。
# mkdir /usr/local/jpeg7 //建立jpeg6软件安装目录
# mkdir /usr/local/jpeg7/bin //建立存放命令的目录
# mkdir /usr/local/jpeg7/lib //创建jpeg6库文件所在目录
# mkdir /usr/local/jpeg7/include //建立存放头文件目录
# mkdir -p /usr/local/jpeg7/man/man1 //建立存放手册的目录
# tar zxvf jpegsrc.v7.tar.gz
# cd jpeg-v7
# ./configure --prefix=/usr/local/jpeg7 --enable-shared --enable-static
注:
--enable-shared //建立共享库使用的GNU的libtool
--enable-static //建立静态库使用的GNU的libtool
# make && make install
# tar zxvf freetype-2.3.5.tar.gz
# cd freetype-2.3.5
# ./configure --prefix=/usr/local/freetype
# make && make install
# tar zxvf autoconf-2.61.tar.gz
# cd autoconf-2.61
# ./configure
# make && make install
# tar zxvf libiconv-1.13.tar.gz
# cd libiconv-1.13/
# ./configure --prefix=/usr/local/libiconv
# make && make install
# tar xzf gettext-0.17.tar.gz
# cd gettext-0.17
# ./configure
# make && make install
# tar zxvf gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure --prefix=/usr/local/gd2 --with-zlib=/usr/local/zlib --with-jpeg=/usr/local/jpeg7 -
-with-png=/usr/local/libpng --with-freetype=/usr/local/freetype
# make && make install
# vi /usr/local/apache/conf/httpd.conf
....
AddType application/x-httpd-php .php
....
DirectoryIndex index.php index.html
:wq
# tar jxf php-5.2.6.tar.bz2 -C /usr/src
# cd /usr/src/php-5.2.6
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-
apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-libxml-
dir=/usr/local/libxml2 --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg7 --with-
freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd2 --with-zlib-dir=/usr/local/zlib --with
-mcrypt=/usr/local/libmcrypt --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --
enable-mbstring=all --enable-sockets
# make && make install
# cp php.ini-dist /usr/local/php/etc/php.ini
# vi /usr/local/php/etc/php.ini
extension_dir="/usr/lib/php/modules" (原为extension_dir="./" )
:wq
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# /usr/local/apache/bin/apachectl restart
# setenforce 1
测试:
# vi /usr/local/apache/htdocs/test.php
phpinfo();
?>
:wq
# /usr/local/apache/bin/apachectl restart
访问:http://www.benet.com/test.php
二、安装nginx
下载地址:
http://blog.s135.com/soft/linux/nginx_php/nginx/nginx-0.7.51.tar.gz
http://blog.s135.com/soft/linux/nginx_php/pcre/pcre-7.8.tar.gz
# tar zxvf pcre-7.9.tar.gz
# cd pcre-7.9
# ./configure
# make && make install
安装pcre成功后,继续安装nginx
# tar zxf nginx-0.7.51.tar.gz
# cd nginx-0.7.51
# ./configure
# make && make install
4、nginx安装成功后的安装目录为/usr/local/nginx
编辑安装目录下conf文件夹中的nginx.conf,输入如下内容
3. 配置虚拟主机
打开配置文件usr/local/nginx/conf/nginx.conf,可以看到http中包含多个server,注释掉配置中默认的
server,在http中加上server {
listen 80;
charset utf8;
server_name www.benet.com;
root /usr/local/nginx/html;
location ~ \.php$
{
proxy_pass http://127.0.0.1:8080;
}
}
启动 /usr/local/nginx/sbin/nginx
停止 /usr/local/nginx/sbin/nginx -s stop
重启 /usr/local/nginx/sbin/nginx -s reload