文章标签 ‘eAccelerator’

什么是Eaccelerator?

也许你从没听说过 Eaccelerator ,但是我想大家都应该听说过 MMCache 吧?Eaccelerator可以算是MMCache的“后继者"。这款软件的功能就是通过在内存中缓存PHP文件从而加速PHP程序的执行速度。由于MMCache的原作者被Zend挖走,MMCache的开发一直处于停滞状态。而Eaccelerator却借鉴了MMCache的优点而一直在不断的更新。

首先,到Eaccelerator的网站上确定最新版本的版本号,然后下载到主机上,解压,并切换至eaccelerator目录。

紧接着需要编译并安装Eaccelerator。不过在此之前,我们先要确定主机上安装后一些必须的组件。

在Debian上,执行:

apt-get install gcc cpp php4-dev

如果是CentOS或Fedora或其他yum的操作系统,现用 yum search 查找文件名,然后用 yum install 来安装。

确认这些必须的组件都安装完毕之后一步一步执行以下命令:

export PHP_PREFIX="/usr"
$PHP_PREFIX/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
make
make install

其中 PHP_PREFIX="/usr" 为PHP的安装目录。

安装完成后,需要打开 php.ini 文件进行编辑,如果你不确定哪个是你的php.ini文件的话,请上传拥有以下内容的文件到服务器上,然后从浏览器中打开,寻找php.ini文件的路径:

1
< ?php phpinfo(); ?>

在文件的最后,添加如下内容:
如果要把Eaccelerator安装为Zend的扩展:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
zend_extension="/usr/lib/php4/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/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"

如果要安装为PHP的扩展:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/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的工作目录:

mkdir /tmp/eaccelerator
chmod 0777 /tmp/eaccelerator

好了,一切搞定!重起Apache吧(/etc/init.d/apache restart)!

注意事项:每次升级PHP前,请务必完全卸载Eaccelerator,等PHP升级完毕后,再重新安装。

2006年1月10日19:12 | 评论关闭
分类: 程序代码
标签: ,

一、软件准备:以下均为网上推荐的稳定版本
PHP(4.3.10):http://cn2.php.net/get/php-4.3.10-Win32.zip/from/cn.php.net/mirror

http://cn.php.net/get/php-4.3.10-Win32.zip/from/a/mirror

MySQL(4.0.26):http://downloads.mysql.com/archives/mysql-4.0/mysql-noinstall-4.0.26-win32.zip

http://downloads.mysql.com/archives.php?p=mysql-4.0

Zend Optimizer(2.5.7):http://downloads.zend.com/optimizer/

phpMyAdmin(2.6.2):http://www.skycn.com/soft/10687.html

http://www.crsky.com/SoftView/SoftView_4190.html

假设 C:\ 为你现在所使用操作系统的系统盘,如果你目前操作系统不是安装在 C:\ ,请自行修改。

二、安装 PHP

(1)、下载后得到 php-4.3.10-Win32.zip ,解压至C:\Inetpub\php(这个路径可以随意,不过下面要是用到这个路径,请相应修改);

(2)、再将C:\Inetpub\php\dlls目录下和C:\Inetpub\php\extensions目录下的所有dll文件拷到c:\Windows\system32下,覆盖已有的dll文件;

(3)、将C:\PHP目录下的php.exe、php.ini-dist和php4ts.dll三个文件拷到C:\Windows ( Windows 2000 下为 C:\WINNT)下; 将C:\Windows\php.ini-dist改名为php.ini,然后用记事本打开,利用记事本的查找功能搜索

register_globals = Off

,将 Off 改成 On ;
再搜索

extension_dir =

,并将其路径指到你的 PHP 目录下的 extensions 目录,比如:extension_dir = "C:\Inetpub\php\extensions" ;
搜索找到

;Windows Extensions

将下面列举的

;extension=php_dbase.dll

可选

;extension=php_gd2.dll

这个是用来支持GD库的,一般需要,必选

;extension=php_ldap.dll

可选

;extension=php_mbstring.dll

这不选一般用PHPMYADMIN会出红色提示,故必选

;extension=php_mssql.dll

这个是用来支持MSSQL的,可选

;extension=php_mysql.dll

这个是用来支持MYSQL的,要支持MYSQL必选
将这些前的";"去掉,其他的你需要的也可以去掉前面的;然后关闭保存该文件。

一些朋友经常反映无法上传较大的文件或者运行某些程序经常超时,那么可以找到C:\Windows ( Windows 2000 下为 C:\WINNT)目录下的PHP.INI以下内容修改:

1
2
3
4
max_execution_time = 30     ; 这个是每个脚本运行的最长时间,可以自己修改加长,单位秒
max_input_time = 60        ; 这是每个脚本可以消耗的时间,单位也是秒
memory_limit = 8M      ; 这个是脚本运行最大消耗的内存,也可以自己加大
upload_max_filesize = 2M ; 上载文件的最大许可大小 ,自己改吧,一些图片论坛需要这个更大的值

(4)、配置 IIS 使其支持 PHP :

首先必须确定系统中已经正确安装 IIS ,如果没有安装,需要先安装 IIS ,安装步骤如下:

打开浏览器,输入:http://localhost/,看到成功页面后进行下面的操作:

PHP 支持 CGI 和 ISAPI 两种安装模式,推荐使用 ISAPI 模式。这里只解介绍 ISAPI 模式安装方法:ISAPI 模式安装步骤:

在“控制面板”的“管理工具”中选择“Internet 服务管理器”,打开 IIS 后停止服务,然后在左侧“你需要支持PHP的Web站点”比如“默认Web站点”上单击右键选择“属性”,在打开的“ Web 站点属性”窗口的“ISAPI 筛选器”标签里找到并点击“添加”按钮,在弹出的“筛选器属性”窗口中的“筛选器名称”栏中输入:PHP ,再将可执行文件指向 php4isapi.dll 所在路径,如:C:\Inetpub\php\sapi\php4isapi.dll。

打开“Web 站点属性”窗口的“主目录”标签,找到并点击“配置”按钮,在弹出的“应用程序配置”窗口中找到并点击“添加”按钮,在弹出的窗口中新增一个扩展名映射,扩展名为 .php ,单击“浏览”将可执行文件指向 php4isapi.dll 所在路径,如:C:\Inetpub\php\sapi\php4isapi.dll,然后一路确定即可。如果还想支持诸如 .php3 ,.phtml 等扩展名的 PHP 文件,可以重复“添加”步骤。

再打开“Web 站点属性”窗口的“文档”标签,找到并点击“添加”按钮,向默认的 Web 站点启动文档列表中添加 index.php 项。您可以将 index.php 升到最高优先级,这样,访问站点时就会首先自动寻找并打开 index.php 文档。

确定 Web 目录的应用程序设置和执行许可中选择为纯脚本,然后关闭 Internet 信息服务管理器,在命令提示符中执行如下命令:

net stop w3svc
net stop iisadmin
net start w3svc

然后在“Internet 服务管理器”左边的“WEB服务扩展”中设置ISAPI 扩展允许,Active Server Pages 允许

打开浏览器,输入:http://localhost/,看到成功页面后,在 IIS 根目录下新建一个 phpinfo.php ,内容如下:

1
2
3
<?php
phpinfo();
?>

打开浏览器,输入:http://localhost/phpinfo.php,将显示当前服务器所支持 PHP 的全部信息,可以看到 Server API的模式为:ISAPI 。

三、配置eaccelerator :

让论坛速度更快 PHP加速设置 PHP加速:eaccelerator(用Turck MMcache会出现一些莫名其妙的错误,所以大家还是用eaccelerator吧)

点击下载eAccelerator_4.3.10.rar
解压缩,把他放到C:\Inetpub\php\extensions\里
然后打开c:\windows\php.ini
搜索

;extension=php_zip.dll

在下面添加

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[eaccelerator]
zend_extension_ts="C:\Inetpub\php\extensions\eaccelerator_win_4.3.10.dll"
zend_extension="C:\Inetpub\php\extensions\eaccelerator_win_4.3.10.dll"
eaccelerator.cache_dir = "F:\tem\"
eaccelerator.shm_size="64"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.debug = "0"
eaccelerator.check_mtime = "1"
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.keys   = "shm"
eaccelerator.sessions = "shm"
eaccelerator.content = "shm"
zend_extension="C:\Inetpub\php\extensions\eloader_win_4.3.10.dll"

注意上面的F:\tem\是用来放缓存的地方~不推荐大家把tem放在系统盘,这个大家可以自己定义.

四、安装 MySQL

如果你下载的是 Windows Essentials (x86) ,将得到 mysql-4.0.26-essential-win.exe ,直接双击安装即可。这里本人安装到C:\Inetpub\MySQL,安装过程中会提示你是不是立即进行配置,选择否即可完成安装。安装完毕后,在“开始”菜单的“运行”中输入:C:\Inetpub\MySQL\bin\mysqld-nt -install ,运行成功之后再输入:net start mysql,将会启动 MySQL 服务;如果你还想较详细的配置 MySQL ,就请进入 C:\Inetpub\MySQL\bin 目录,运行 MySQLInstanceConfig.exe ,按提示操作即可。

如果你下载的是 Windows (x86) ,解压后双击执行 Setup.exe 即可,步骤同上。

如果你下载的是 Without installer (unzip in C:\) ,直接解压到C:\Inetpub\MySQL,在“开始”菜单的“运行”中输入: C:\Inetpub\MySQL\bin\mysqld-nt.exe ,运行成功之后再输入:net start mysql,即可启动 MySQL 服务。

为MYSQL设置密码,确保安全:
一般菜单里面有配置向导MySQL Server Instance Config Wizar,运行后按下面步骤配置设置ROOT密码即可

ROOT密码,建议社设置复杂点,确保服务器安全!

也可以在MySQL Command Line Client里面用命令配置:
首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>

修改密码。
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例:给root加个密码xqin.com首先在DOS下进入目录mysqlbin,然后键入以下命令
mysqladmin -uroot -password clang.cn
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

这样ROOT密码就设置为clang.cn了

MY.INI文件配置:
mysql安装好需要优化配置一下,打开c:\windows\my.ini文件
仔细对比下面我优化过的my.ini看看哪里没有的就加进去

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#This File was made using the WinMySQLAdmin 1.4 Tool
#2005-12-4 15:37:01
 
#Uncomment or Add only the keys that you know how works.
#Read the MySQL Manual for instructions
 
[mysqld]
basedir=C:/Inetpub/MySQL
#bind-address=192.168.1.1
datadir=C:/Inetpub/MySQL/data
#language=C:/Inetpub/MySQL/share/your language directory
#slow query log#=
#tmpdir#=
#port=3306
set-variable   = max_connections=2500
skip-locking
#skip-networking
set-variable     = key_buffer=384M
set-variable     = max_allowed_packet=1M
set-variable     = table_cache=512
set-variable     = sort_buffer=2M
set-variable     = record_buffer=2M
set-variable     = thread_cache=8
# Try number of CPU's*2 for thread_concurrency
set-variable     = thread_concurrency=8
set-variable     = myisam_sort_buffer_size=64M
#set-variable     = connect_timeout=5
set-variable     = wait_timeout=5
server-id     = 1
[isamchk]
set-variable     = key_buffer=128M
set-variable     = sort_buffer=128M
set-variable     = read_buffer=2M
set-variable     = write_buffer=2M
 
[myisamchk]
set-variable     = key_buffer=128M
set-variable     = sort_buffer=128M
set-variable     = read_buffer=2M
set-variable     = write_buffer=2M
[WinMySQLadmin]
Server=C:/Inetpub/MySQL/bin/mysqld-nt.exe
user=root
password=clang.cn

对于MYSQL4.1以上的版本还应该加在[mysqld]中加一句:

default-character-set=gbk

这句话的意思是指定mysql数据库默认的字符集是gbk。
因为MySQL 从 4.1开始把多国语言字符集分的更加详细,默认的字符集为latin1,所以导致数据库迁移,或者某些程序升级后出现乱码问题。因为 latin1 在许多地方 (下边会详细描述具体是哪些地方) 作为默认的字符集,成功的蒙蔽了许多 PHP 程序的开发者和用户,掩盖了在中文等语言环境下会出现的问题。

五、安装 Zend Optimizer :

下载后得到 ZendOptimizer-2.5.7-Windows-i386.exe ,直接双击安装即可,安装过程要你选择 Web Server 时,选择 IIS ,然后提示你是否 Restart Web Server,选择是,完成安装之前提示是否备份 php.ini ,点确定后安装完成。需要注意的是:如果您的PHP是4.3以上版本,那么就不要用缺省安装,而应该用定制安装并选择 PHP的版本为PHP 4.3.X,方能正确安装,否则会说版本不支持。
我这里安装到C:\Inetpub\Zend

Zend Optimizer 的安装向导会自动根据你的选择来修改 php.ini 帮助你启动这个引擎。下面简单介绍一下 Zend Optimizer 的配置选项。以下为本人安装完成后 php.ini 里的默认配置代码(分号后面的内容为注释):

1
2
3
4
5
6
zend_extension_ts="C:\Inetpub\Zend\lib\ZendExtensionManager.dll"
;Zend Optimizer 模块在硬盘上的安装路径。
zend_extension_manager.optimizer_ts="C:\Inetpub\Zend\lib\Optimizer-2.5.7"
;优化器所在目录,默认无须修改。
zend_optimizer.optimization_level=15
;优化程度,这里定义启动多少个优化过程,默认值是 15 ,表示同时开启 10 个优化过程中的 1-4 ,我们可以将这个值改为 1023 ,表示开启全部10个优化过程。

各个优化过程的对应的数字代码(值)如下:
不使用 0 <= 如果这样不如不装,还能节约点内存的说!
优化过程1(PASS1) 1
优化过程2(PASS2) 2
优化过程3(PASS3) 4
优化过程4(PASS4) 8
优化过程5(PASS5) 16
优化过程6(PASS6) 32
优化过程7(PASS7) 64
优化过程8(PASS8) 128
优化过程9(PASS9) 256
优化过程10(PASS10) 512

调用phpinfo()函数后显示:

Zend Engine v1.3.0, Copyright (c) 1998-2002 Zend Technologies with Zend Optimize
r v2.1.0, Copyright (c) 1998-2003, by Zend Technologies 则表示安装成功。

六、安装GD库
这一步在前面PHP.INI配置中实际上已经安装好了~

在php.ini里找到 "extension_dir",然后将路径指向extension,如下(假设你的php安装路
径为:C:\Inetpub\php,设置

1
extension_dir = "C:\Inetpub\php\extensions"

完成这步后,在php.ini里找到"extension=php_gd2.dll"这一行,并且去掉前面的分号,gd库安装完成,运行http://localhost/phpinfo.php测试是否成功!

七、安装 phpMyAdmin:
下载得到 phpMyAdmin-2.6.0.zip ,将其解压到 IIS 根目录,找到并打开 config.inc.php ,做以下修改:

搜索

1
$cfg['PmaAbsoluteUri']

设置你的phpmyadmin的URL,如:

1
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/'

注意这里假设phpmyadmin在默认站点的根目录下
搜索

1
$cfg['blowfish_secret']

设定好root密码后这里也要填写比如ROOT密码clang.cn则设置为

1
$cfg['blowfish_secret'] = 'clang.cn';

搜索

1
$cfg['DefaultLang']

将其设置为 zh-gb2312 ;
搜索

1
$cfg['DefaultCharset']

将其设置为 gb2312 ;
搜索

1
$cfg['Servers'][$i]['auth_type']

默认为config,是不安全的,不推荐,推荐使用cookie,将其设置为

1
$cfg['Servers'][$i]['auth_type']     = 'cookie';

注意这里如果设置为config请在下面设置用户名和密码!例如:

1
2
$cfg['Servers'][$i]['user']          = 'root';      // MySQL user-----MySQL连接用户
$cfg['Servers'][$i]['password']      = 'clang.cn';

打开浏览器,输入:http://localhost/phpMyAdmin/ ,若 IIS 和 MySQL 均已启动,输入用户ROOT密码clang.cn即可浏览数据库内容。
phpMyAdmin 的具体功能,请慢慢熟悉,这里不再赘述。
至此所有安装完毕。

2006年1月9日01:41 | 评论关闭
分类: Windows