风's profile风来西林PhotosBlogLists Tools Help
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 模块,以及用户的磁盘配额的一些技术实现的笔记陆续公布出来,以求大家共同进步~! :-)

    

January 11

关于php5的一些错误处理笔记!

 1、 [error] [client 192.168.0.120] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20060613+lfs/pdo_mysql.so' - /usr/lib/php5/20060613+lfs/pdo_mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0, referer: http://192.168.0.146/
      处理方法: 安装 php5-mysql 和 php5-snmp
      日期:2009-1-11
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服务是否正常运行了~!大笑

November 05

ubuntu系统允许用户外部访问MYSQL修改

通过管理帐号登陆MYSQL

添加或授权一个外部访问MYSQL的帐号:

grant all privileges on *.*(任何数据库) to 用户名@"%(此处为任何主机)" identified by "(你的密码)" with grant option;

试用命令查看3306端口

netstat  -an  |grep  3306

tcp                0            0  127.0.0.1:3306                    0.0.0.0:*                              LISTEN

从外部服务器扫描该服务器,3306也没有打开,我们修改my.cnf文件开启外部访问的权限:

bind-address           = 127.0.0.1  #将该处的配制删除或注释掉,因为该参数是限制访问只能是本机

忘记了UBUNTU系统中的MYSQL ROOT 密码修改方法

(1)以系统root权限登陆

(2)停止MYSQL服务器:

mysqladmin shutdown

(3)跳过授权表执行MYSQL服务器:

mysqld_safe --skip-grant-tables --skip-networking & (注:参数--skip-grant-tables为跳过授权表;--skip-networking为不监听TCP/IP连接)

 
Photo 1 of 1

风来西林

Digital Art !