文章标签 ‘Zend’
一、前言
发现本版中很多用户的问题都是关于空间搭建的,所以写了这篇作文希望对大家有所帮助,这也是版主职责嘛,呵呵。这篇文章所描述的整合过程是针对Discuz!而写的,旨在让Discuz!更好的运行。原则就是用不到的东西就不装、不编、不配,最大程度让系统干净快速。
二、准备程序
以下所有程序的版本都是推荐使用的,并且是截止到本文发布时最新的版本。
Apache 2.0.55
下载地址:http://apache.justdn.org/httpd/httpd-2.0.55.tar.gz
PHP 4.4.1
下载地址:http://cn.php.net/get/php-4.4.1.tar.gz/from/cn2.php.net/mirror
MySQL 4.0.26
下载地址:
http://downloads.mysql.com/archi ... t-4.0.26-0.i386.rpm
http://downloads.mysql.com/archi ... r-4.0.26-0.i386.rpm
Zend Optimizer 2.6.0
下载地址:http://prdownloads.sourceforge.n ... pl1.tar.gz?download
PHPMyAdmin 2.7.0-pl1
下载地址:https://www.phpmyadmin.net
三、安装整合环境
1、准备工作:
由于Discuz!4.0的水印功能需要调用GD库实现,所以请先确定你的系统中已经安装了GD环境:
# rpm -qa | grep zlib
# rpm -qa | grep libpng
# rpm -qa | grep freetype
# rpm -qa | grep jpeg
# rpm -qa | grep gd
如果没有安装的话,可以按照下面的步骤手动安装:
(1) 安装zlib
# tar zxvf zlib-1.2.2.tar.gz
# cd zlib-1.2.2
# ./configure
# make
# make install(2) 安装libpng
# tar zxvf libpng-1.2.7.tar.tar
# cd libpng-1.2.7
# cd scripts/
# mv makefile.linux ../makefile
# cd ..
# make
# make install
注意,这里的makefile不是用./configure生成,而是直接从scripts/里复制一个。(3) 安装freetype
# tar zxvf freetype-2.1.9.tar.gz
# cd freetype-2.1.9
# ./configure
# make
# make install(4) 安装Jpeg
# tar zxvf jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# ./configure --enable-shared
# make
# make test
# make install
注意:这里configure一定要带--enable-shared参数,不然,不会生成共享库(5)安装GD
# tar zxvf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --with-png --with-freetype --with-jpeg
# make install
2、安装配置MySQL
在安装MySQL之前,首先检查系统中是否安装了随Linux安装光盘自带的MySQL RPM:
# rpm -qa | grep mysql
如果没有返回任何结果则说明系统中没有安装过MySQL RPM,如果返回有MySQL RPM信息,
则需要先卸载它:
# rpm -e MySQL-xxxxxx
卸载过程中可能会提示有包依赖性问题而无法完成卸载,可以使用--nodeps或--force进行
强制卸载。
当系统中的MySQL卸载完毕后我们开始安装新的版本:
安装客户端:
# rpm -ivh MySQL-client-4.0.26-0.i386.rpm
安装服务端:
# rpm -ivh MySQL-server-4.0.26-0.i386.rpm
启动MySQL Server:
# /etc/rc.d/init.d/mysql start
设置root密码:
# mysqladmin -u root password new_password_for_root
3、安装配置Apache
# tar xzvf httpd-2.0.55.tar.gz
# cd httpd-2.0.55
# ./configure --prefix=/usr/local/apache --enable-so (这里为了节省内存提高Apache性能只允许了加载动态模块参数,而没有加载其他的模块。
如果需要什么模块,今后手动挂载上去就可以了。)
# make
# make install
配置Apache:
# vi /usr/local/apache/conf/httpd.conf
以下只列出httpd.conf需要改动和配置的地方,其他地方暂时不用改动,略过。
ServerAdmin 将此处改为服务器管理员的E-Mail地址(例如:webmaster@yourdomain.com)
ServerName 将此处改为服务器的域名(例如:www.yourdomain.com:80)
DocumentRoot 将此处改为你的网站根目录(例如:"/var/www")
3、安装配置PHP
# tar xzvf php-4.4.1.tar.gz
# cd php-4.4.1
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql --with-config-file-path=/usr/local/php/etc --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --enable-xml --enable-mbstring
# make
# make install
# cp php.ini-recommend /usr/local/php/etc/php.ini
与Apache整合:
编辑httpd.conf文件:
# vi /usr/local/apache/conf/httpd.conf
找到:
DirectoryIndex
在后面的默认文件中增加index.php
找到:
AddType application/x-gzip .gz .tgz
在下面添加一行:
AddType application/x-httpd-php .php
保存退出
4、安装Zend Optimizer
# tar xzvf Zend*.gz
# rm -f Zend*.gz
# cd Zend*
# ./install.sh
安装过程非常友好,很简单,但在输入php.ini文件路径的时候必须输入正确:/usr/local/php/etc
安装完成后Zend Optimizer会自动重新启动Apache。
5、安装配置PHPMyAdmin
# tar xzvf phpMyAdmin-2.7.0-pl1.tar.gz
将解压后的目录移动到服务器网站的根目录中(架设网站根目录为/var/www)
# mv phpMyAdmin-2.7.0-pl1 /var/www/phpMyAdmin
配置PHPMyAdmin:
# cd /var/www/phpMyAdmin
# vi config.inc.php
修改:
$cfg['PmaAbsoluteUri'] = 'http://www.yourdomain.com/phpMyAdmin'; (写出访问phpMyAdmin的绝对URL)
$cfg['blowfish_secret'] = 'cookie'; (使用cookie加密)
$cfg['Servers'][$i]['connect_type'] = 'socket'; (以socket方式连接MySQL)
$cfg['Servers'][$i]['compress'] = TRUE; (启用压缩以提高速度,如果访问不正常请改回FALSE)
$cfg['Servers'][$i]['auth_type'] = 'cookie'; (使用cookie进行身份验证)
保存退出。
至此,环境构建完毕。
[color=Red]对于环境的优化由于因环境而异,所以请各位自己找一些优化文档看看,一定要根据自己的硬件配置和
服务器负载有进行针对性的优化,不要生搬硬套,否则可能适得其反的。[/color]
一、软件准备:以下均为网上推荐的稳定版本
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 的具体功能,请慢慢熟悉,这里不再赘述。
至此所有安装完毕。

