zoukankan      html  css  js  c++  java
  • Linux_源码搭建LAMP环境(二)

    这个主要描述下一些常用插件和工具的安装和配置。

    1.eAccelerator

    eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,

    提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,

    对服务器的开销几乎完全消除。 它还有对脚本起优化作用,

    以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍;

    1.安装eAccelerator

    如果只有一个php安装,那么可以直接在eAccelerator目录下执行

    phpize
    ./configure
    make

    当你有多个php安装或者phpize不再你的当前路径中的时候,那么

    [gaohu@tigertall ~]$ tar -jxf eaccelerator-0.9.6.1.tar.bz2

    [gaohu@tigertall ~]$ cd eaccelerator-0.9.6.1

    [gaohu@tigertall ~]$ su -

    [root@tigertall ~]# cd /home/gaohu/eaccelerator-0.9.6.1

    [root@tigertall eaccelerator-0.9.6.1]# /usr/local/bin/phpize
    Configuring for:
    PHP Api Version:         20090626
    Zend Module Api No:      20090626
    Zend Extension Api No:   220090626

    /usr/local/bin/phpize命令一定要放在eaccelerator目录下执行,

    不然会报 Cannot find config.m4 的错误。

    [root@tigertall eaccelerator-0.9.6.1]# ./configure \

    --enable-eaccelerator=shared \

    --with-php-config=/usr/local/bin/php-config

    [root@tigertall eaccelerator-0.9.6.1]# make

    [root@tigertall eaccelerator-0.9.6.1]# make install
     

    得到如下的输出,安装就成功了

    Installing shared extensions:

      /usr/local/lib/php/extensions/no-debug-zts-20090626/

     

    如果php编译的是非线程安全的,那么可能会输出在

    /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

    自己要注意下。

     

    2.配置eAccelerator

    eAccelerator可以被配置为Zend扩展,或者是php的扩展。当被配置为Zend扩展时,

    需要使用完整目录来指示eaccelerator.so链接库的路径。

    如果存在php.d目录,则把eAccelerator.ini拷贝进去,并进行设置。

    否则的话,则编辑php.ini文件。


    安装为zend扩展:

    zend_extension="/usr/lib/php4/eaccelerator.so"
    eaccelerator.shm_size="16"
    eaccelerator.cache_dir="
     /var/cache/eaccelerator"
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"
    eaccelerator.debug="0"
    eaccelerator.filter=""
    eaccelerator.shm_max="0"
    eaccelerator.shm_ttl="0"
    eaccelerator.shm_prune_period="0"
    eaccelerator.shm_only="0"
    eaccelerator.compress="1"
    eaccelerator.compress_level="9"

    eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"

    如果你使用了线程安全的php构建,那么需要使用

    "zend_extension_ts" 来替换上面的 "zend_extension".


    安装为php扩展:

    extension="eaccelerator.so"
    eaccelerator.shm_size="16"
    eaccelerator.cache_dir="
    /var/cache/eaccelerator"
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"
    eaccelerator.debug="0"
    eaccelerator.filter=""
    eaccelerator.shm_max="0"
    eaccelerator.shm_ttl="0"
    eaccelerator.shm_prune_period="0"
    eaccelerator.shm_only="0"
    eaccelerator.compress="1"
    eaccelerator.compress_level="9"

    eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"

    把以上内容粘贴到php.ini文件中即可。

     

    上述变量的意思:

    eaccelerator.shm_size="16" 

      解释:eaccelerator可使用的共享内存大小(单位为MB)。

    eaccelerator.cache_dir="/tmp/eaccelerator" 

      解释:缓存路径

    eaccelerator.enable="1" 

      解释:打开或者关闭eaccelerator。"1"指打开,"0"指关闭。默认值为"1"。

    eaccelerator.optimizer="1" 

      解释:打开或者关闭代码优化,开启可以加快代码的执行速度。

      "1"指打开,"0"指关闭。默认值为"1"。

    eaccelerator.check_mtime="1"

      解释:当打开此项时,eaccelerator会在每次请求时检查php文件的修改时间,

      看其是否被修改过,这会耗费一点时间,如果php文件被修改过,

      eaccelerator会重新编译缓存该php文件。当关闭此项时,如果php文件被修改,

      则需要手工删eaccelerator缓存,才能显示被修改的php文件。

      "1"指打开,"0"指关闭。默认值为"1"。

    eaccelerator.debug="0" 

      解释:打开或者关闭调试记录。当打开时,eaccelerator会将对一个缓存文件的

      每次请求都写进log。打开此项只对调试eaccelerator是否有BUG时有益处。

      "1"指打开,"0"指关闭。默认值为"0"。

    eaccelerator.log_file="/usr/local/apache2/logs/eaccelerator_log" 

      解释:日志文件

    eaccelerator.filter=""    

      解释:决定哪些PHP文件应该被缓存。可以指定一个范围(比如"*.php *.phtml"),

      这样被指定的文件就会被缓存。如果该范围以!开头,

      被指定的文件就不会被缓存。默认值为"",表示缓存所有的PHP文件。

    eaccelerator.shm_max="0"  

      解释:一个用户使用例如eaccelerator_put之类的函数能够往

      共享内存中加载的最大数据。默认值为"0",表示不限制。(单位为字节)

    eaccelerator.shm_ttl="0"  

      解释:当没有足够的空闲共享内存去尝试缓冲一个新脚本时,将删除至少

      在shm_ttl秒之前没有被访问过的文件。默认值为"0",表示不尝试从

      共享内存中删除任何旧的脚本。(单位为秒)

    eaccelerator.shm_prune_period="0" 

      解释:当没有足够的空闲共享内存去尝试缓冲一个新脚本时,将删所有旧脚本,

      前提是这个尝试在超过shm_prune_period秒之前被执行过。默认值为"0",

      表示不尝试从共享内存中删除任何旧的脚本。(单位为秒)

    eaccelerator.shm_only="0" 

      解释:打开或者关闭在磁盘上缓存编译过的脚本。这个参数对会话数据

      和内容缓存没有效果。默认值为"0",表示使用磁盘和共享内存来缓存。

    eaccelerator.compress="1"

      解释:打开或者关闭缓存内容压缩。"1"指打开,"0"指关闭。默认值为"1"。

    eaccelerator.compress_level="9" 

      解释:内存压缩的级别。默认值为"9",表示最大压缩。

    eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"

      解释:eaccelerator控制文件路径,这样,可以通过

      http://your-web-server/control.php获取图形化访问eaccelerator。

      要使用这个功能,要把安装源代码目录下的control.php拷贝到

      /usr/local/apache2/htdocs/目录下,并设置control.php文件中

      的用户和密码,以后,则需要文件中的用户名和密码登陆。



    同时调整php.ini中扩展插件的目录为上述的输出

    ; Directory in which the loadable extensions (modules) reside.
    ; http://php.net/extension-dir
    ; extension_dir = "./"
    ; On windows:
    ; extension_dir = "ext"
    extension_dir = "/usr/local/lib/php/extensions/no-debug-zts-20090626/"

     


    3.创建缓存目录

    目录要与上面配置文件中指定的一致,并且,要确保webserver的运行用户对这个

    目录有可写入的权限。

    [root@tigertall eaccelerator-0.9.6.1]# mkdir /var/cache/eaccelerator

    比如我的apache守护进程是有daemon用户来执行的(可以在httpd.conf中找到)

    那么,我切换下目录的属主

    [root@tigertall eaccelerator-0.9.6.1]# chown -R daemon.daemon /var/cache/eaccelerator

     

    4.重启apache

    重启apache,以启用eaccelerator扩展。

    访问http://your-web-server/phpinfo.php

    或者在命令行执行 php -v

    可以看到eaccelerator已经启用的信息。

    2.ImageMagick

    ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,

    可以用来读、写和处理超过89种基本格式的图片文件,

    包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。

    ImageMagick比gd提供了更好的图像处理质量。推荐使用。

    下载ImageMagick的源代码

    1.解压缩

    [gaohu@tigertall ~]$ tar -zxf ImageMagick.tar.gz


    2.编译安装

    [gaohu@tigertall ~]$ tar -zxf ImageMagick.tar.gz

    [gaohu@tigertall ~]$ cd ImageMagick-6.6.3-0/

    [gaohu@tigertall ImageMagick-6.6.3-0]$ ./configure

    [gaohu@tigertall ImageMagick-6.6.3-0]$ make

    [gaohu@tigertall ImageMagick-6.6.3-0]$ sudo make install

    3.下载imagick

    这个是php的一个支持ImageMagick的扩展。

    下载地址:http://pecl.php.net/package/imagick

    4.编译安装imagick

    这里,像安装eaccelerator一样,把imagick安装为php的一个扩展。

    [gaohu@tigertall ~]$ tar -zxvf imagick-3.0.0RC2.tgz

    [gaohu@tigertall ~]$ cd imagick-3.0.0RC2

    [gaohu@tigertall imagick-3.0.0RC2]$ phpize

    [gaohu@tigertall imagick-3.0.0RC2]$ ./configure \

      --with-php-config=/usr/local/bin/php-config

    [gaohu@tigertall imagick-3.0.0RC2]$ make

    [gaohu@tigertall imagick-3.0.0RC2]$ sudo make install
    Installing shared extensions:

       /usr/local/lib/php/extensions/no-debug-zts-20090626/
    Installing header files:  /usr/local/include/php/

    4.配置imagick

    [gaohu@tigertall ~]$ sudo vi /usr/local/lib/php.ini


    添加以下:

    extension = "imagick.so"

    保存退出。

    ImageMagick和imagick的安装完成

    3.phpMyAdmin

    phpMyAdmin是一个网络的数据库管理平台,这个跟php是没有什么关系的,

    不过使用起来也是比较方便的,所以推荐大家使用。

    下载代码后,直接把代码解压到网站根目录下的一个文件夹,就可以使用了。
    [gaohu@tigertall ~]$ cd /usr/local/apache2/htdocs/
    [gaohu@tigertall htdocs]$ tar -jxf /home/gaohu/phpMyAdmin-3.3.4-all-languages.tar.bz2 

    [gaohu@tigertall htdocs]$ mv phpMyAdmin-3.3.4-all-languages phpMyAdmin

    [gaohu@tigertall htdocs]$ cd phpMyAdmin/

    [gaohu@tigertall phpMyAdmin]$ cp config.sample.inc.php  config.inc.php
    然后就可以以http://your-web-server/phpMyAdmin来访问phpMyAdmin的功能了。

    我所用到的就是这么多了,如果有更好的,也希望大家推荐给我。^_^。

    下面就要再次安装meidiawiki了,呵呵 。

     

    <201007219 高虎 于杭州 博客园>

  • 相关阅读:
    javascript基金会——鼠标事件,系统对话框,等等。
    面向对象的方式进行数据交换网络之间的差异
    A*寻路算法lua实现
    鸟哥Linux私房菜 基础学习篇读书笔记(10):Linux磁盘和文件系统管理(3)
    JEECG移动解决方案
    JavaScript事件收集
    OSChina 的URL类的源代码重写过程
    正则表达式注意事项
    随着通信和编程,它是一门艺术系列3(沟通的目的)
    Snmp常用oid
  • 原文地址:https://www.cnblogs.com/tigertall/p/1780802.html
Copyright © 2011-2022 走看看