<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[沧海一粟]]></title> 
<link>http://www.dzhope.com/index.php</link> 
<description><![CDATA[Web系统架构与服务器运维,php开发]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[沧海一粟]]></copyright>
<item>
<link>http://www.dzhope.com/post//</link>
<title><![CDATA[Nginx+Apache搭建前后端web生产环境[转] ]]></title> 
<author>jed &lt;jed521@163.com&gt;</author>
<category><![CDATA[服务器技术]]></category>
<pubDate>Fri, 16 Sep 2011 08:19:24 +0000</pubDate> 
<guid>http://www.dzhope.com/post//</guid> 
<description>
<![CDATA[ 
	前言:谈到Linux下的web生产环境,大家就会想到apache这个开源服务器软件.apache可以整合大多数应用,比如jsp,php,cgi,python等等,但是apache过于臃肿以及对静态文件响应过于缓慢让很多使用者感到头疼.而nginx作为新崛起的服务器软件,在很多方面超出apache,定位也很明确:高性能的 HTTP 和反向代理服务器.因而,本篇主要讲的是nginx作为前端,apache作为后端的应用环境搭建过程.<br/><br/>为什么不使用nginx+php(fastcgi)作为生产环境?我提出我的看法.<br/><br/>1.php(fastcgi)不够稳定,经常出现502错误,生成相对复杂的页面没有优势,反而会使php-cgi进程变为僵尸进程.<br/>2.安全性,多用户多站点权限问题.php(fastcgi)在应对多用户多站点往往捉襟见肘,不易于实施.<br/>3.整合其他开发语言,apache表现得游刃有余.资源利用恰到好处.<br/>为什么采用nginx做前端,apache作为后端的方案?nginx在处理静态内容上较apache是几倍或几十倍的差异,因而放在前面过滤静态内容是最为恰当的.同时nginx也是一个负载均衡器,低资源消耗,高性能转发是它的特点.经过nginx在前面的过滤,后端的apache需要处理的内容相对就比较少了.只需负责处理动态内容就可以了.在性能与稳定性的权衡下,使用nginx+apache搭配会让它们在各自擅长的领域展现自身的价值.<br/><br/>本教程以CentOS 5.4 32bit为环境.其他Linux发行版本暂未测试.nginx,php,apache,mysql,pureftpd均为最新稳定版. <br/><br/>获取操作系统源更新.<br/><br/>yum update<br/><br/>yum -y install gcc gcc-c++ bison patch unzip mlocate flex wget automake autoconf gd cpp gettext readline-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel libidn libidn-devel openldap openldap-devel openldap-clients openldap-servers nss_ldap expat-devel libtool libtool-ltdl-devel<br/><br/>如果系统默认安装了apache,请先卸载.执行:<br/><br/>yum remove httpd<br/><br/>下载最新稳定版的程序源码包,以下都是到官方网站或sourceforge下载的源码包.<br/><br/>cd /usr/local/src<br/><br/>wget <a href="http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.45.tar.gz/from/http://mysql.he.net/" target="_blank">http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.45.tar.gz/from/http://mysql.he.net/</a><br/><br/>wget <a href="http://www.apache.org/dist/httpd/httpd-2.2.15.tar.gz" target="_blank">http://www.apache.org/dist/httpd/httpd-2.2.15.tar.gz</a><br/><br/>wget <a href="http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz" target="_blank">http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz</a><br/><br/>wget <a href="http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz" target="_blank">http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz</a><br/><br/>wget <a href="http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download" target="_blank">http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download</a><br/><br/>wget <a href="http://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz/download" target="_blank">http://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz/download</a><br/><br/>wget <a href="http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2/download" target="_blank">http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2/download</a><br/><br/>wget <a href="http://www.php.net/get/php-5.2.13.tar.gz/from/this/mirror" target="_blank">http://www.php.net/get/php-5.2.13.tar.gz/from/this/mirror</a><br/><br/>wget <a href="http://php-fpm.org/downloads/php-5.2.13-fpm-0.5.13.diff.gz" target="_blank">http://php-fpm.org/downloads/php-5.2.13-fpm-0.5.13.diff.gz</a><br/><br/>wget <a href="http://www.lancs.ac.uk/~steveb/patches/php-mail-header-patch/php5-mail-header.patch" target="_blank">http://www.lancs.ac.uk/~steveb/patches/php-mail-header-patch/php5-mail-header.patch</a><br/><br/>wget <a href="http://pecl.php.net/get/memcache-2.2.5.tgz" target="_blank">http://pecl.php.net/get/memcache-2.2.5.tgz</a><br/><br/>wget <a href="http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2" target="_blank">http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2</a><br/><br/>wget <a href="ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz" target="_blank">ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz</a><br/><br/>wget <a href="http://pecl.php.net/get/imagick-2.3.0.tgz" target="_blank">http://pecl.php.net/get/imagick-2.3.0.tgz</a><br/><br/>wget <a href="http://download.suhosin.org/suhosin-0.9.29.tgz" target="_blank">http://download.suhosin.org/suhosin-0.9.29.tgz</a><br/><br/>wget <a href="http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz" target="_blank">http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz</a><br/><br/>wget <a href="http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz" target="_blank">http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz</a><br/><br/>wget <a href="http://monkey.org/~provos/libevent-1.4.13-stable.tar.gz" target="_blank">http://monkey.org/~provos/libevent-1.4.13-stable.tar.gz</a><br/><br/>wget <a href="http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz" target="_blank">http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz</a><br/><br/>wget <a href="http://sourceforge.net/projects/pcre/files/pcre/8.01/pcre-8.01.tar.gz/download" target="_blank">http://sourceforge.net/projects/pcre/files/pcre/8.01/pcre-8.01.tar.gz/download</a><br/><br/>wget <a href="http://nginx.org/download/nginx-0.7.65.tar.gz" target="_blank">http://nginx.org/download/nginx-0.7.65.tar.gz</a><br/><br/>wget <a href="http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.28.tar.gz" target="_blank">http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.28.tar.gz</a><br/><br/>一.安装Mysql.安装最新稳定版5.1.45版本,并没有采用最新开发版.<br/>cd /usr/local/src<br/><br/>tar -zxf mysql-5.1.45.tar.gz<br/><br/>cd mysql-5.1.45<br/><br/>./configure --prefix=/usr/local/mysql --enable-assembler --enable-thread-safe-client --with-extra-charsets=all --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=partition,innodb_plugin,myisam,myisammrg<br/><br/>make &amp;&amp; make install<br/><br/>cd ../<br/><br/>groupadd mysql -g 27<br/><br/>useradd mysql -u 27 -g 27 -c &quot;MySQL Server&quot; -d /var/lib/mysql -M<br/><br/>cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf<br/><br/>/usr/local/mysql/bin/mysql_install_db --user=mysql<br/><br/>chown -R mysql /usr/local/mysql/var<br/><br/>chgrp -R mysql /usr/local/mysql/.<br/><br/>cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql<br/><br/>chmod u+x /etc/init.d/mysql<br/><br/>chkconfig --level 345 mysql on<br/><br/>echo &quot;/usr/local/mysql/lib/mysql&quot; &gt;&gt; /etc/ld.so.conf<br/><br/>echo &quot;/usr/local/lib&quot; &gt;&gt;/etc/ld.so.conf<br/><br/>ldconfig<br/><br/>ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql<br/><br/>ln -s /usr/local/mysql/include/mysql /usr/include/mysql<br/><br/>ln -s /usr/local/mysql/bin/mysql_config /usr/bin/mysql_config<br/><br/>service mysql start<br/><br/>/usr/local/mysql/bin/mysqladmin -u root password root<br/><br/>service mysql restart<br/><br/>service mysql stop<br/><br/>二.编译安装apache(httpd).apache的执行用户为nobody.<br/>cd /usr/local/src<br/><br/>tar -zxf httpd-2.2.15.tar.gz<br/><br/>cd httpd-2.2.15<br/><br/>./configure --prefix=/usr/local/apache --enable-headers --enable-mime-magic --enable-proxy --enable-rewrite --enable-ssl --enable-suexec --disable-userdir --with-included-apr --with-mpm=prefork --with-ssl=/usr --with-suexec-caller=nobody --with-suexec-docroot=/ --with-suexec-gidmin=100 --with-suexec-logfile=/usr/local/apache/logs/suexec_log --with-suexec-uidmin=100 --with-suexec-userdir=public_html<br/><br/>make<br/><br/>make install<br/><br/>mkdir /usr/local/apache/domlogs<br/><br/>cp /usr/local/apache/bin/apachectl /etc/init.d/httpd<br/><br/>1.编辑/etc/init.d/httpd,在首行#!/bin/sh下添加:<br/><br/># Startup script for the Apache Web Server<br/><br/>#<br/><br/># chkconfig: - 85 15<br/><br/># description: Apache is a World Wide Web server. It is used to serve &#92;<br/><br/># HTML files and CGI.<br/><br/># processname: httpd<br/><br/># pidfile: /usr/local/apache/logs/httpd.pid<br/><br/># config: /usr/local/apache/conf/httpd.conf<br/><br/>ulimit -n 1024<br/><br/>ulimit -n 4096<br/><br/>ulimit -n 8192<br/><br/>ulimit -n 16384<br/><br/>ulimit -n 32768<br/><br/>ulimit -n 65535<br/><br/>保存退出.<br/><br/>2.配置apache配置参数文件httpd.conf,位于/usr/local/apache/conf/目录<br/><br/>cd /usr/local/apache/conf/<br/><br/>mv httpd.conf httpd.conf.bak<br/><br/>mkdir vhosts<br/><br/>vi httpd.conf<br/><br/>输入以下内容:<br/><br/>PidFile logs/httpd.pid<br/>LockFile logs/accept.lock<br/>ServerRoot &quot;/usr/local/apache&quot;<br/>Listen 0.0.0.0:81<br/>User nobody<br/>Group nobody<br/>ServerAdmin admin@evlit.com<br/>ServerName host.evlit.com<br/><br/>Timeout 300<br/>KeepAlive Off<br/>MaxKeepAliveRequests 100<br/>KeepAliveTimeout 5<br/>UseCanonicalName Off<br/>AccessFileName .htaccess<br/>TraceEnable Off<br/>ServerTokens ProductOnly<br/>FileETag None<br/>ServerSignature Off<br/>HostnameLookups Off<br/><br/># LoadModule perl_module modules/mod_perl.so<br/><br/>DocumentRoot &quot;/usr/local/apache/htdocs&quot;<br/><br/>&lt;Directory &quot;/&quot;&gt;<br/> Options ExecCGI FollowSymLinks Includes IncludesNOEXEC -Indexes -MultiViews SymLinksIfOwnerMatch<br/> Order allow,deny<br/> Allow from all<br/> AllowOverride All<br/>&lt;/Directory&gt;<br/><br/>&lt;Directory &quot;/usr/local/apache/htdocs&quot;&gt;<br/> Options Includes -Indexes FollowSymLinks<br/> AllowOverride None<br/> Order allow,deny<br/> Allow from all<br/>&lt;/Directory&gt;<br/><br/>DefaultType text/plain<br/>RewriteEngine on<br/>AddType text/html .shtml<br/>AddHandler cgi-script .cgi .pl .plx .ppl .perl<br/>AddHandler server-parsed .shtml<br/>&lt;IfModule mime_module&gt;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;TypesConfig conf/mime.types<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/perl .pl .plx .ppl .perl<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-img .img<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-httpd-php .php .php3 .php4 .php5 .php6<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-httpd-php-source .phps<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/cgi .cgi<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/x-sql .sql<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/x-log .log<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/x-config .cnf conf<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/x-registry .reg<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-compress .Z<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-gzip .gz .tgz<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/html .shtml<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-tar .tgz<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/rar .rar<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-compressed .rar<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-rar .rar<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/x-rar-compressed .rar<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/vnd.wap.wml .wml<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType image/vnd.wap.wbmp .wbmp<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType text/vnd.wap.wmlscript .wmls<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/vnd.wap.wmlc .wmlc<br/>&nbsp;&nbsp;&nbsp;&nbsp;AddType application/vnd.wap.wmlscriptc .wmlsc<br/>&lt;/IfModule&gt;<br/><br/>&lt;IfModule dir_module&gt;<br/> DirectoryIndex index.html index.htm index.shtml index.php index.perl index.pl index.cgi<br/>&lt;/IfModule&gt;<br/><br/>&lt;Files ~ &quot;^error_log$&quot;&gt;<br/> Order allow,deny<br/> Deny from all<br/><br/> Satisfy All<br/>&lt;/Files&gt;<br/><br/>&lt;FilesMatch &quot;^&#92;.ht&quot;&gt;<br/> Order allow,deny<br/> Deny from all<br/> Satisfy All<br/>&lt;/FilesMatch&gt;<br/><br/>ErrorLog &quot;logs/error_log&quot;<br/>LogLevel warn<br/><br/>&lt;IfModule log_config_module&gt;<br/> LogFormat &quot;%h %l %u %t &#92;&quot;%r&#92;&quot; %&gt;s %b &#92;&quot;%&#123;Referer&#125;i&#92;&quot; &#92;&quot;%&#123;User-Agent&#125;i&#92;&quot;&quot; combined<br/> LogFormat &quot;%h %l %u %t &#92;&quot;%r&#92;&quot; %&gt;s %b&quot; common<br/><br/> &lt;IfModule logio_module&gt;<br/><br/> LogFormat &quot;%h %l %u %t &#92;&quot;%r&#92;&quot; %&gt;s %b &#92;&quot;%&#123;Referer&#125;i&#92;&quot; &#92;&quot;%&#123;User-Agent&#125;i&#92;&quot; %I %O&quot; combinedio<br/> &lt;/IfModule&gt;<br/> CustomLog &quot;logs/access_log&quot; common<br/>&lt;/IfModule&gt;<br/><br/>&lt;IfModule alias_module&gt;<br/> ScriptAlias /cgi-bin/ &quot;/usr/local/apache/cgi-bin/&quot;<br/>&lt;/IfModule&gt;<br/><br/>&lt;Directory &quot;/usr/local/apache/cgi-bin&quot;&gt;<br/> AllowOverride None<br/> Options None<br/> Order allow,deny<br/> Allow from all<br/>&lt;/Directory&gt;<br/><br/>&lt;IfModule mpm_prefork_module&gt;<br/> StartServers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3<br/> MinSpareServers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3<br/> MaxSpareServers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5<br/> MaxClients&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;150<br/> MaxRequestsPerChild&nbsp;&nbsp; 1024<br/>&lt;/IfModule&gt;<br/><br/>&lt;IfModule mod_headers.c&gt;<br/>&lt;FilesMatch &quot;&#92;.(html&#124;htm&#124;shtml)$&quot;&gt;<br/><br/>Header set Cache-Control &quot;max-age=3600, must-revalidate&quot;<br/>&lt;/FilesMatch&gt;<br/>&lt;/IfModule&gt;<br/><br/>ReadmeName README.html<br/>HeaderName HEADER.html<br/><br/>IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t<br/><br/>Include conf/extra/httpd-languages.conf<br/><br/>&lt;Location /server-status&gt;<br/> SetHandler server-status<br/> Order deny,allow<br/> Deny from all<br/> Allow from 127.0.0.1<br/>&lt;/Location&gt;<br/>ExtendedStatus On<br/><br/>&lt;Location /server-info&gt;<br/> SetHandler server-info<br/> Order deny,allow<br/> Deny from all<br/> Allow from 127.0.0.1<br/><br/>&lt;/Location&gt;<br/><br/>&lt;IfModule ssl_module&gt;<br/>Listen 0.0.0.0:443<br/>AddType application/x-x509-ca-cert .crt<br/>AddType application/x-pkcs7-crl .crl<br/>SSLCipherSuite ALL:!ADH:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP<br/>SSLPassPhraseDialog&nbsp;&nbsp;builtin<br/>SSLSessionCache&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dbm:/usr/local/apache/logs/ssl_scache<br/>SSLSessionCacheTimeout&nbsp;&nbsp;300<br/>SSLMutex&nbsp;&nbsp;file:/usr/local/apache/logs/ssl_mutex<br/>SSLRandomSeed startup builtin<br/>SSLRandomSeed connect builtin<br/>&lt;/IfModule&gt;<br/><br/>#Vhosts<br/>NameVirtualHost 127.0.0.1:81<br/>NameVirtualHost *<br/><br/>&lt;VirtualHost 127.0.0.1:81 *&gt;<br/> ServerName host.evlit.com<br/> DocumentRoot /var/www/html<br/> ServerAdmin admin@evlit.com<br/>&lt;/VirtualHost&gt;<br/><br/>Include conf/vhosts/*上述出现的127.0.0.1请改为你本机公网IP.<br/><br/>三.编译安装php(mod_php)<br/>1.编译安装相关支持库<br/><br/>cd /usr/local/src<br/><br/>tar -zxf libiconv-1.13.1.tar.gz<br/><br/>cd libiconv-1.13.1/<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>cd /usr/local/src<br/><br/>tar -jxf libmcrypt-2.5.8.tar.bz2<br/><br/>cd libmcrypt-2.5.8/<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>/sbin/ldconfig<br/><br/>cd libltdl/<br/><br/>./configure --enable-ltdl-install<br/><br/>make<br/><br/>make install<br/><br/>cd /usr/local/src<br/><br/>tar -jxf mhash-0.9.9.9.tar.bz2<br/><br/>cd mhash-0.9.9.9/<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la<br/><br/>ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so<br/><br/>ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4<br/><br/>ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8<br/><br/>ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a<br/><br/>ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la<br/><br/>ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so<br/><br/>ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2<br/><br/>ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1<br/><br/>cd /usr/local/src<br/><br/>tar -zxf mcrypt-2.6.8.tar.gz<br/><br/>cd mcrypt-2.6.8/<br/><br/>/sbin/ldconfig<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>2.编译php,这里我们为php打入补丁.有助于防止邮件发送被滥用(多用户)以及在邮件中提供有价值的信息.补丁介绍信息请点击:<a href="http://www.lancs.ac.uk/~steveb/patches/php-mail-header-patch/" target="_blank">http://www.lancs.ac.uk/~steveb/patches/php-mail-header-patch/</a><br/><br/>cd /usr/local/src<br/><br/>tar -zxf php-5.2.13.tar.gz<br/><br/>patch -d php-5.2.13 -p1 &lt; php5-mail-header.patch<br/><br/>cd php-5.2.13<br/><br/>./configure --prefix=/usr/local --with-config-file-path=/etc --with-apxs2=/usr/local/apache/bin/apxs --enable-bcmath --enable-calendar --enable-exif --enable-ftp --enable-gd-native-ttf --enable-libxml --enable-magic-quotes --enable-mbstring --enable-pdo=shared --enable-soap --enable-sockets --enable-zip --with-bz2 --with-curl --with-curlwrappers --with-freetype-dir --with-gd --with-gettext --with-jpeg-dir --with-kerberos --with-libexpat-dir=/usr --with-libxml-dir=/usr --with-mcrypt=/usr --with-mhash=/usr --with-mysql=/usr --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mysqli=/usr/bin/mysql_config --with-openssl=/usr --with-openssl-dir=/usr --with-pdo-mysql=shared --with-pdo-sqlite=shared --with-png-dir=/usr --with-sqlite=shared --with-ttf --with-xmlrpc --with-zlib -with-zlib-dir=/usr<br/><br/>make ZEND_EXTRA_LIBS=&#039;-liconv&#039;<br/><br/>make install<br/><br/>cp php.ini-dist /etc/php.ini<br/><br/>3.安装php扩展模块<br/><br/>cd /usr/local/src<br/><br/>tar -zxf memcache-2.2.5.tgz<br/><br/>cd memcache-2.2.5/<br/><br/>phpize<br/><br/>./configure --with-php-config=/usr/local/bin/php-config --with-zlib-dir --enable-memcache<br/><br/>make<br/><br/>make install<br/><br/>cd /usr/local/src<br/><br/>tar -jxf eaccelerator-0.9.6.tar.bz2<br/><br/>cd eaccelerator-0.9.6/<br/><br/>phpize<br/><br/>./configure --enable-eaccelerator=shared --with-php-config=/usr/local/bin/php-config<br/><br/>make<br/><br/>make install<br/><br/>mkdir -p /tmp/eaccelerator<br/><br/>chmod 777 /tmp/eaccelerator<br/><br/>echo &quot;mkdir -p /tmp/eaccelerator&quot; &gt;&gt; /etc/rc.local<br/><br/>echo &quot;chmod 777 /tmp/eaccelerator&quot; &gt;&gt; /etc/rc.local<br/><br/>cd /usr/local/src<br/><br/>tar -zxf ImageMagick.tar.gz<br/><br/>cd ImageMagick-*<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>cd /usr/local/src<br/><br/>tar -zxf imagick-2.3.0.tgz<br/><br/>cd imagick-2.3.0/<br/><br/>phpize<br/><br/>./configure --with-php-config=/usr/local/bin/php-config<br/><br/>make<br/><br/>make install<br/><br/>cd /usr/local/src<br/><br/>tar -zxf suhosin-0.9.29.tgz<br/><br/>cd suhosin-0.9.29<br/><br/>phpize<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>cd /usr/local/src<br/><br/>tar -zxf ioncube_loaders_lin_x86.tar.gz<br/><br/>cd ioncube<br/><br/>mkdir /usr/local/ioncube<br/><br/>mv ioncube_loader_lin_5.2.so /usr/local/ioncube/<br/><br/>cd /usr/local/src<br/><br/>tar -zxf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz<br/><br/>mkdir -p /usr/local/Zend/lib/Optimizer-3.3.9/php-5.2.x<br/><br/>cp ZendOptimizer-3.3.9-linux-glibc23-i386/data/5_2_x_comp/ZendOptimizer.so /usr/local/Zend/lib/Optimizer-3.3.9/php-5.2.x/ZendOptimizer.so<br/><br/>3.1.修改php.ini.<br/><br/>查找/etc/php.ini中的extension_dir = &quot;./&quot;.将其修改为extension_dir = &quot;/usr/local/lib/php/extensions/no-debug-non-zts-20060613/&quot;<br/><br/>查找;include_path = &quot;.:/php/includes&quot;,删除前面的分号,并修改为include_path = &quot;.:/usr/lib/php:/usr/local/lib/php&quot;<br/><br/>跳到最后一行,然后添加以下内容:<br/><br/>extension = &quot;memcache.so&quot;<br/><br/>extension = &quot;pdo.so&quot;<br/><br/>extension = &quot;pdo_mysql.so&quot;<br/><br/>extension = &quot;pdo_sqlite.so&quot;<br/><br/>extension = &quot;sqlite.so&quot;<br/><br/>extension = &quot;eaccelerator.so&quot;<br/><br/>eaccelerator.shm_size = 32<br/><br/>eaccelerator.cache_dir = &quot;/tmp/eaccelerator&quot;<br/><br/>eaccelerator.enable = 1<br/><br/>eaccelerator.optimizer = 0<br/><br/>eaccelerator.debug = 0<br/><br/>eaccelerator.name_space = &quot;&quot;<br/><br/>eaccelerator.check_mtime = 1<br/><br/>eaccelerator.filter = &quot;&quot;<br/><br/>eaccelerator.shm_max = 0<br/><br/>eaccelerator.shm_ttl = 7200<br/><br/>eaccelerator.shm_prune_period = 7200<br/><br/>eaccelerator.shm_only = 1<br/><br/>eaccelerator.compress = 0<br/><br/>eaccelerator.compress_level = 9<br/><br/>eaccelerator.keys = shm<br/><br/>eaccelerator.sessions = shm<br/><br/>eaccelerator.content = shm<br/><br/>zend_extension = &quot;/usr/local/ioncube/ioncube_loader_lin_5.2.so&quot;<br/><br/>zend_extension = &quot;/usr/local/Zend/lib/Optimizer-3.3.9/php-5.2.x/ZendOptimizer.so&quot;<br/><br/>4,安装Memcached(可选)<br/><br/>cd /usr/local/src<br/><br/>tar -xzf libevent-1.4.13-stable.tar.gz<br/><br/>cd libevent-1.4.13-stable<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib<br/><br/>cd /usr/local/src<br/><br/>tar -xzf memcached-1.4.4.tar.gz<br/><br/>cd memcached-1.4.4<br/><br/>./configure --with-libevent=/usr<br/><br/>make<br/><br/>make install<br/><br/>基本使用方法:<br/><br/>启动:/usr/local/bin/memcached -d -m 64 -p 11211 -u nobody -l localhost<br/><br/>关闭:killall -9 memcached<br/><br/>四.安装nginx<br/>1.安装pcre库<br/><br/>cd /usr/local/src<br/><br/>tar -zxf pcre-8.01.tar.gz<br/><br/>cd pcre-8.01<br/><br/>./configure<br/><br/>make<br/><br/>make install<br/><br/>2.安装nginx<br/><br/>cd /usr/local/src<br/><br/>tar -zxf nginx-0.7.65.tar.gz<br/><br/>cd nginx-0.7.65<br/><br/>./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --pid-path=/usr/local/nginx/logs/nginx.pid --error-log-path=/usr/local/nginx/logs/error.log --http-log-path=/usr/local/nginx/logs/access.log --http-client-body-temp-path=/tmp/nginx_client --http-proxy-temp-path=/tmp/nginx_proxy --http-fastcgi-temp-path=/tmp/nginx_fastcgi --with-http_stub_status_module<br/><br/>make<br/><br/>make install<br/><br/>2.1.添加init控制脚本<br/><br/>#! /bin/sh<br/>ulimit -n 65535<br/># Description: Startup script for nginx<br/># chkconfig: 2345 55 25<br/><br/>PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin<br/>DESC=&quot;nginx daemon&quot;<br/>NAME=nginx<br/>DAEMON=/usr/local/nginx/sbin/$NAME<br/>CONFIGFILE=/usr/local/nginx/conf/nginx.conf<br/>PIDFILE=/usr/local/nginx/logs/$NAME.pid<br/>SCRIPTNAME=/etc/init.d/$NAME<br/><br/>set -e<br/>[ -x &quot;$DAEMON&quot; ] &#124;&#124; exit 0<br/><br/>do_start() &#123;<br/> $DAEMON -c $CONFIGFILE &#124;&#124; echo -n &quot;nginx already running&quot;<br/>&#125;<br/><br/>do_stop() &#123;<br/> kill -QUIT `cat $PIDFILE` &#124;&#124; echo -n &quot;nginx not running&quot;<br/>&#125;<br/><br/>do_reload() &#123;<br/> kill -HUP `cat $PIDFILE` &#124;&#124; echo -n &quot;nginx can&#039;t reload&quot;<br/>&#125;<br/><br/>case &quot;$1&quot; in<br/> start)<br/> echo -n &quot;Starting $DESC: $NAME&quot;<br/> do_start<br/> echo &quot;.&quot;<br/> /etc/init.d/httpd start<br/> ;;<br/> stop)<br/> echo -n &quot;Stopping $DESC: $NAME&quot;<br/> do_stop<br/> echo &quot;.&quot;<br/> /etc/init.d/httpd stop<br/> ;;<br/> reload)<br/> echo -n &quot;Reloading $DESC configuration...&quot;<br/> do_reload<br/> echo &quot;.&quot;<br/> /etc/init.d/httpd restart<br/> ;;<br/> restart)<br/> echo -n &quot;Restarting $DESC: $NAME&quot;<br/> do_stop<br/> sleep 1<br/> do_start<br/> echo &quot;.&quot;<br/> /etc/init.d/httpd restart<br/> ;;<br/> *)<br/> echo &quot;Usage: $SCRIPTNAME &#123;start&#124;stop&#124;reload&#124;restart&#125;&quot; &gt;&amp;2<br/> exit 3<br/> ;;<br/>esac<br/><br/>exit 0保存退出,给该文件赋予执行权限并设置开机启动<br/><br/>chmod u+x /etc/init.d/nginx<br/><br/>chkconfig --level 345 nginx on<br/><br/>2.2.修改nginx配置文件,位于:/usr/local/nginx/conf/目录<br/><br/>cd /usr/local/nginx/conf/<br/><br/>mv nginx.conf nginx.conf.bak<br/><br/>mkdir vhosts<br/><br/>vi nginx.conf<br/><br/>输入以下内容:<br/><br/>worker_processes&nbsp;&nbsp;1;<br/>worker_rlimit_nofile&nbsp;&nbsp;65535;<br/>events &#123;<br/> worker_connections&nbsp;&nbsp;65535;<br/> use epoll;<br/>&#125;<br/>error_log&nbsp;&nbsp;/usr/local/nginx/logs/error.log info;<br/>http &#123;<br/> include&nbsp;&nbsp;&nbsp;&nbsp;mime.types;<br/> default_type&nbsp;&nbsp;application/octet-stream;<br/> sendfile on;<br/> tcp_nopush on;<br/> tcp_nodelay on;<br/> keepalive_timeout&nbsp;&nbsp;10;<br/> gzip on;<br/> gzip_http_version 1.0;<br/> gzip_min_length&nbsp;&nbsp;1100;<br/> gzip_comp_level&nbsp;&nbsp;3;<br/> gzip_buffers&nbsp;&nbsp;4 32k;<br/> gzip_types&nbsp;&nbsp;&nbsp;&nbsp;text/plain text/xml text/css application/x-javascript application/xml application/xml+rss text/javascript application/atom+xml;<br/> ignore_invalid_headers on;<br/> client_header_timeout&nbsp;&nbsp;3m;<br/> client_body_timeout 3m;<br/> send_timeout&nbsp;&nbsp;&nbsp;&nbsp; 3m;<br/> connection_pool_size&nbsp;&nbsp;256;<br/> server_names_hash_max_size 2048;<br/> server_names_hash_bucket_size 256;<br/> client_header_buffer_size 256k;<br/> large_client_header_buffers 4 256k;<br/> request_pool_size&nbsp;&nbsp;32k;<br/> output_buffers&nbsp;&nbsp; 4 64k;<br/> postpone_output&nbsp;&nbsp;1460;<br/> open_file_cache max=1000 inactive=300s;<br/> open_file_cache_valid&nbsp;&nbsp;&nbsp;&nbsp;600s;<br/> open_file_cache_min_uses 2;<br/> open_file_cache_errors&nbsp;&nbsp; off;<br/> include &quot;/usr/local/nginx/conf/vhosts/*.conf&quot;;<br/> server &#123;<br/> listen 80;<br/> server_name _;<br/> access_log off;<br/> location ~* &#92;.(ftpquota&#124;htaccess&#124;asp&#124;aspx&#124;jsp&#124;asa&#124;mdb)$ &#123;<br/> deny&nbsp;&nbsp;all;<br/> &#125;<br/> location / &#123;<br/> client_max_body_size&nbsp;&nbsp;&nbsp;&nbsp;100m;<br/> client_body_buffer_size 128k;<br/> proxy_send_timeout&nbsp;&nbsp; 300;<br/> proxy_read_timeout&nbsp;&nbsp; 300;<br/> proxy_buffer_size&nbsp;&nbsp;&nbsp;&nbsp;4k;<br/> proxy_buffers&nbsp;&nbsp;&nbsp;&nbsp; 16 32k;<br/> proxy_busy_buffers_size 64k;<br/> proxy_temp_file_write_size 64k;<br/> proxy_connect_timeout 30s;<br/> proxy_pass <a href="http://127.0.0.1:81/;" target="_blank">http://127.0.0.1:81/;</a><br/> proxy_set_header&nbsp;&nbsp; Host&nbsp;&nbsp; $host;<br/> proxy_set_header&nbsp;&nbsp; X-Real-IP&nbsp;&nbsp;$remote_addr;<br/> proxy_set_header&nbsp;&nbsp; X-Forwarded-For $proxy_add_x_forwarded_for;<br/> &#125;<br/> &#125;<br/>&#125;保存退出.<br/><br/>五.为apache安装rpaf模块,该模块用于apache做后端时获取访客真实的IP.<br/>1.使用apxs安装模块.这里要使用此前apache编译安装后的apxs<br/><br/>cd /usr/local/src/<br/><br/>tar -zxf mod_rpaf-0.6.tar.gz<br/><br/>cd mod_rpaf-0.6<br/><br/>/usr/local/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c<br/><br/>2.编辑/usr/local/apache/conf/httpd.conf,添加模块参数,查找LoadModule php5_module modules/libphp5.so,在下方添加:<br/><br/>LoadModule rpaf_module modules/mod_rpaf-2.0.so<br/><br/>#Mod_rpaf settings<br/><br/>RPAFenable On<br/><br/>RPAFproxy_ips 127.0.0.1 [your_ips]<br/><br/>RPAFsethostname On<br/><br/>RPAFheader X-Forwarded-For<br/><br/>上面出现的[your_ips]请修改为你本机所监听web服务的ip.多个IP用空格空开.<br/><br/>六.安装ftp服务器:pure-ftpd<br/>1.编译安装<br/><br/>cd /usr/local/src/<br/><br/>tar -zxf pure-ftpd-1.0.28.tar.gz<br/><br/>cd pure-ftpd-1.0.28<br/><br/>./configure --prefix=/usr/local/pureftpd --with-language=simplified-chinese --with-everything<br/><br/>make<br/><br/>make install<br/><br/>chmod u+x configuration-file/pure-config.pl<br/><br/>cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin/<br/><br/>mkdir /usr/local/pureftpd/etc/<br/><br/>cp configuration-file/pure-ftpd.conf /usr/local/pureftpd/etc/<br/><br/>ln -s /usr/local/pureftpd/bin/pure-pw /usr/local/bin/<br/><br/>2.配置pure-ftpd,这里采用PureDB的验证方式.<br/><br/>vi /usr/local/pureftpd/etc/pure-ftpd.conf<br/><br/>查找 PureDB /etc/pureftpd.pdb 取消前面的#号并设置成PureDB/usr/local/pureftpd/etc/pureftpd.pdb<br/><br/>查找 PassivePortRange 取消前面的#号<br/><br/>其他参数根据需要进行修改<br/><br/>3.添加自启动.这里不创建init脚本.直接放在/etc/rc.local启动即可<br/><br/>echo &quot;/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf --daemonize&quot; &gt; /etc/rc.local<br/><br/>至此.所有安装工作结束.<br/><br/>如何使用这套系统<br/>一,做好必要的安全工作<br/>设置用户家目录/home/user,相关配置参数文件,以及访问日志等目录的权限.<br/><br/>chmod 711 /home<br/><br/>chmod 711 /usr/local/pureftpd<br/><br/>chmod 711 /usr/local/apache/conf/vhosts<br/><br/>chmod 711 /usr/local/nginx/conf/vhosts<br/><br/>chmod 711 /usr/local/apache/domlogs<br/><br/>chmod 711 /usr/local/apache/logs<br/><br/>二,如何创建用户<br/>创建用户分两个步骤.第一步创建系统用户.该命令直接创建用户家目录.第二步创建ftp用户.创建该用户依赖系统用户的创建.步骤如下(以创建用户名为admin为例):<br/><br/>useradd admin -m -s /sbin/nologin<br/><br/>pure-pw useradd admin -u admin -g admin -d /home/admin -m[第一次执行不可用]<br/><br/>pure-pw mkdb[仅限第一次执行]<br/><br/>注意.通过上述方法安装的ftp服务器在第一次创建用户的时候不可以在pure-pw useradd ...后直接添加参数-m更新ftp用户数据库.需要分两步执行.以后可以直接在创建用户时在后面添加参数-m,执行之后会提示让你输入密码.需要重复输入两次.<br/><br/>三.如何绑定域名<br/>由于采用前后端操作.因此需要修改两个服务器软件的虚拟主机参数.实例如下(以admin.com为例,用户目录承接上文的/home/admin):<br/><br/>1.创建nginx虚拟主机参数<br/><br/>cd /usr/local/nginx/conf/vhosts<br/><br/>touch admin.com.conf<br/><br/>vi admin.com.conf<br/><br/>输入以下内容:<br/><br/>server &#123;<br/> error_log /usr/local/nginx/logs/admin.com-error_log warn;<br/> listen 127.0.0.1:80;<br/> server_name admin.com <a href="http://www.admin.com;" target="_blank">www.admin.com;</a><br/> access_log off;<br/> location ~* &#92;.(gif&#124;jpg&#124;jpeg&#124;png&#124;ico&#124;wmv&#124;avi&#124;asf&#124;asx&#124;mpg&#124;mpeg &#92;<br/>&#124;mp4&#124;pls&#124;mp3&#124;mid&#124;wav&#124;swf&#124;flv&#124;html&#124;htm&#124;txt&#124;js&#124;css&#124;exe&#124;zip&#124;rar &#92;<br/>&#124;gz&#124;tgz&#124;bz2&#124;uha&#124;7z&#124;doc&#124;docx&#124;xls&#124;xlsx&#124;pdf&#124;iso)$ &#123;<br/> access_log /usr/local/apache/domlogs/admin.com combined;<br/> root /home/admin/public_html;<br/> expires 7d;<br/> try_files $uri @backend;<br/> &#125;<br/> error_page 400 401 402 403 404 405 406 407 408 409 500 501 502 503 504 @backend;<br/> location @backend &#123;<br/> internal;<br/> client_max_body_size&nbsp;&nbsp;&nbsp;&nbsp;100m;<br/> client_body_buffer_size 128k;<br/> proxy_send_timeout&nbsp;&nbsp; 300;<br/> proxy_read_timeout&nbsp;&nbsp; 300;<br/> proxy_buffer_size&nbsp;&nbsp;&nbsp;&nbsp;4k;<br/> proxy_buffers&nbsp;&nbsp;&nbsp;&nbsp; 16 32k;<br/> proxy_busy_buffers_size 64k;<br/> proxy_temp_file_write_size 64k;<br/> proxy_connect_timeout 30s;<br/> proxy_redirect <a href="http://admin.com:81" target="_blank">http://admin.com:81</a> <a href="http://admin.com;" target="_blank">http://admin.com;</a><br/> proxy_redirect <a href="http://www.admin.com:81" target="_blank">http://www.admin.com:81</a> <a href="http://www.admin.com;" target="_blank">http://www.admin.com;</a><br/> proxy_pass <a href="http://127.0.0.1:81;" target="_blank">http://127.0.0.1:81;</a><br/> proxy_set_header&nbsp;&nbsp; Host&nbsp;&nbsp; $host;<br/> proxy_set_header&nbsp;&nbsp; X-Real-IP&nbsp;&nbsp;$remote_addr;<br/> proxy_set_header&nbsp;&nbsp; X-Forwarded-For $proxy_add_x_forwarded_for;<br/> &#125;<br/> location ~* &#92;.(ftpquota&#124;htaccess&#124;asp&#124;aspx&#124;jsp&#124;asa&#124;mdb)$ &#123;<br/> deny&nbsp;&nbsp;all;<br/> &#125;<br/> location / &#123;<br/> client_max_body_size&nbsp;&nbsp;&nbsp;&nbsp;100m;<br/> client_body_buffer_size 128k;<br/> proxy_send_timeout&nbsp;&nbsp; 300;<br/> proxy_read_timeout&nbsp;&nbsp; 300;<br/> proxy_buffer_size&nbsp;&nbsp;&nbsp;&nbsp;4k;<br/> proxy_buffers&nbsp;&nbsp;&nbsp;&nbsp; 16 32k;<br/> proxy_busy_buffers_size 64k;<br/> proxy_temp_file_write_size 64k;<br/> proxy_connect_timeout 30s;<br/> proxy_redirect <a href="http://admin.com:81" target="_blank">http://admin.com:81</a> <a href="http://admin.com;" target="_blank">http://admin.com;</a><br/> proxy_redirect <a href="http://www.admin.com:81" target="_blank">http://www.admin.com:81</a> <a href="http://www.admin.com;" target="_blank">http://www.admin.com;</a><br/> proxy_pass <a href="http://127.0.0.1:81/;" target="_blank">http://127.0.0.1:81/;</a><br/> proxy_set_header&nbsp;&nbsp; Host&nbsp;&nbsp; $host;<br/> proxy_set_header&nbsp;&nbsp; X-Real-IP&nbsp;&nbsp;$remote_addr;<br/> proxy_set_header&nbsp;&nbsp; X-Forwarded-For $proxy_add_x_forwarded_for;<br/> &#125;<br/>&#125;保存退出,注意将上述出现的127.0.0.1替换本机监听web服务的IP<br/><br/>2.创建apache虚拟主机配置文件<br/><br/>cd /usr/local/apache/conf/vhosts<br/><br/>touch admin.com.conf<br/><br/>vi admin.com.conf<br/><br/>输入以下内容:<br/><br/>&lt;VirtualHost 127.0.0.1:81&gt;<br/><br/> ServerName admin.com<br/> ServerAlias <a href="http://www.admin.com" target="_blank">www.admin.com</a><br/> DocumentRoot /home/admin/public_html<br/> ServerAdmin admin@evlit.com<br/> UseCanonicalName Off<br/> CustomLog /usr/local/apache/domlogs/admin.com combined<br/> php_admin_value open_basedir &quot;/home/admin:/usr/lib/php:/usr/local/lib/php:/tmp&quot;<br/> &lt;IfModule !mod_disable_suexec.c&gt;<br/> SuexecUserGroup admin admin<br/> &lt;/IfModule&gt;<br/> ScriptAlias /cgi-bin/ /home/admin/public_html/cgi-bin/<br/>&lt;/VirtualHost&gt;保存退出,注意将上述出现的127.0.0.1替换本机监听web服务的IP.<br/><br/>四.如何管理MySQL数据库<br/>1.下载最新版PhpMyAdmin源码包<br/><br/>mkdir -p /var/www/html<br/><br/>chmod -R 711 /var/www<br/><br/>cd /var/www/html<br/><br/>wget <a href="http://sourceforge.net/projects/phpmyadmin/files%2FphpMyAdmin%2F3.3.0%2FphpMyAdmin-3.3.0-all-languages.tar.bz2/download" target="_blank">http://sourceforge.net/projects/phpmyadmin/files%2FphpMyAdmin%2F3.3.0%2FphpMyAdmin-3.3.0-all-languages.tar.bz2/download</a><br/><br/>tar -jxf phpMyAdmin-3.3.0-all-languages.tar.bz2<br/><br/>mv phpMyAdmin-3.3.0-all-languages phpmyadmin<br/><br/>2.增加apache配置,编辑httpd.conf,转到最后一行<br/><br/>cd /usr/local/apache/conf<br/><br/>vi httpd.conf /* shift+g转到最后一行 */<br/><br/>#Managed Tools<br/><br/>&lt;VirtualHost 127.0.0.1:81 *&gt;<br/><br/>ServerName localhost<br/><br/>ServerAlias pma.*<br/><br/>DocumentRoot /var/www/html/phpmyadmin<br/><br/>ServerAdmin admin@localhost<br/><br/>UseCanonicalName Off<br/><br/>&lt;/VirtualHost&gt;<br/><br/>同样,修改上述出现的127.0.0.1为你提供web服务的IP.重启apache后.我们打开绑定到服务器IP的pma.yourdomain.com即可访问到phpmyadmin.第一次使用.需要进行配置.具体配置请善用Google.<br/><br/>其他没有照顾到的地方自行添加即可.如perl,sendmail等.<br/><br/>为方便管理员添加用户及绑定域名.我编写了一个脚本.<br/><br/>wget <a href="http://icodex.org/vhosts" target="_blank">http://icodex.org/vhosts</a><br/><br/>chmod u+x vhosts<br/><br/>./vhosts<br/><br/><br/>Tags - <a href="http://www.dzhope.com/tags/nginx/" rel="tag">nginx</a> , <a href="http://www.dzhope.com/tags/apache/" rel="tag">apache</a>
]]>
</description>
</item><item>
<link>http://www.dzhope.com/post//#blogcomment</link>
<title><![CDATA[[评论] Nginx+Apache搭建前后端web生产环境[转] ]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.dzhope.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>