风's profile风来西林PhotosBlogLists Tools Help

Blog


    January 21

    ubuntu 安装AMP环境的笔记 Prefork方式与fast-cgi方式

          改来改去,搜来搜去,发现GG和百度上的资料还是很凌乱,要不就是程序采集(有些采集的不伦不类的,还有错字和信息不全),可把我们这类小鸟等级的人给折腾坏了.(汗~~~~~!) 经历了无数次搜索和实际测试,归纳成一下文章,这里我只说明一些步骤,对于详细的相关说明还是不写了(如果写完的话估计我可以出书了.)

         具体步骤如下:

         系统:ubuntu 8.04 的发行版本

         AMP with Prefork(mod-php5)

          一、安装APACHE2

         # sudo  apt-get  install  apache2  apache2-mpm-prefork

         这样APACHE部分就完成,默认目录是 /var/www

         二、进行PHP的环境配置:

         # sudo  apt-get  install  php5  libapache2-mod-php5  php5-cli  php5-dev  php5-gd  php5-imagick  php5-mcrypt  php5-xmlrpc

         当然,需要更多的PHP5 extension 便可以自己补完。完成后手动启动模块:

        # sudo  a2enmod  php5

        三、MYSQL软件的安装

        # sudo  apt-get  install  mysql-server  libapache2-mod-auth-mysql  php5-mysql

        MYSQL安装完成之后一切就搞定了,不过别忘了,通过APT方式安装MYSQL在安装过程当中是必须为MYSQL的ROOT用户设置密码的。

        AMP with Worker(fast-cgi)

         如果想使用 worker 方式来跑的话必须使用fast-cgi模式,步骤如下:

        一、首先安装 apache with mpm-worker:

        # sudo  apt-get  install  apache2  apache2-mpm-worker  libapache2-mod-fcgid

       二、安装和配置PHP部分

        # sudo  apt-get  install  php5  php5-cgi  php5-cli  php5-dev  php5-gd  php5-imagick  php5-mcrypt  php5-xmlrpc

        三、MYSQL的安装配置

        # sudo  apt-get  install  mysql-server  libapache2-mod-auth-mysql  php5-mysql

         (MYSQL需要注意的部分同上,up!)

        四、配置FAST-CGI模式下的目录(我觉得这个是重点,受那些杂乱资料的影响我就失败在这块)

             在<Directory …> … </Directory> 里加入一下两句话

             AddHandler fcgid-script .php

             FCGIWrapper /usr/lib/cgi-bin/php5 .php

             并在本段的 Option 上多加一个参数 ExecCGI

         完成以上工作后,我们便可以重启apache2进行测试工作了~~!

         # sudo  /etc/init.d/apache2  force-reload

        在服务目录中我们放入写有 phpinfo(); 函数的PHP文件,才查看本LAMP环境的参数是否正确。

        附录:

         一、根据需要调整APACHE的模块

        在APACHE部分,首要的编辑就是/etc/apache2/mod-available的目录下的模块加载,你先看看自己需要哪些模块,里面有很多MOD_NAME.load和MOD_NAME.conf然后通过模块添加命令进行添加。

        模块添加的命令:

        # sudo  a2enmod  [MOD_NAME]

        举例说明:

        启用页面压缩的deflate来说,方法如下:

        # sudo  a2enmod  deflate

        然后编辑 /etc/apache2/mods-available/deflate.conf  ,改为:

        <IfModule mod_deflate.c>
            DeflateCompressionLevel  6
            AddOutputFilterByType   DEFLATE  text/html  text/plain  text/xml
            AddOutputFilter   DEFLATE  html  htm  xml  css  js
        </IfModule>

        之后重启 apache2 便可完成。

       二、关于apache2-mpm-prefork模式和FAST-CGI模式的php.ini文件位置

        apache2-mpm-prefork: /etc/php5/apache2/php.ini

        FAST-CGI:/etc/php5/cgi/php.ini

        特别是在使用eAcceleratorMMCache的时候需要特别注意!

        好了,今天暂时就先到这里了。过段时间我会陆续的把 suexec 模块userdir 模块,以及用户的磁盘配额的一些技术实现的笔记陆续公布出来,以求大家共同进步~! :-)

        

    November 11

    ubuntu 系统下的apache添加ssi模块

    通过apt-get install apache2 安装系统后,默认安装并没有把模块直接加载,我们需要手动添加一个软连接,便于系统自动加载该模块!执行命令如下:
    #cd /etc/apache2/mods-enabled
    #sudo ln -s /etc/apache2/mods-available/include.load

    然后再修改你的虚拟主机的配置文件

    添加 +Includes 和文件类型

    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml

    重启apache 服务

    sudo apache2ctl restart

    我们可以在页面内添加

    <!--#echo var="DATE_LOCAL" -->

    来测试一下SSI服务是否正常运行了~!大笑