LAMP+gd+zend 安装配置
时间:2007-02-03 来源:austin22
基于 LINUX的 APACHE2+PHP5.2+MYSQL5.0+GD+ZendOptimizer3.2.2 的安装配置
安装环境:
# cat /proc/version
Linux version 2.6.9-42.0.3.ELsmp (buildsvn@build-i386) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)) #1 SMP Fri Oct 6 06:21:39 CDT 2006
2.6.9是内核的版本号,内核的版本号是Linus领导下的开发小组开发的内核的版本号。Linux内核版本号的格式如A.B.C,其中B为偶数的的版本是稳定的版本,并且C越大的越新,相对而言bug越少,越稳定。 通常,内核版本序号是偶数表示是稳定的版本,奇数序号是不稳定的测试版本。
SMP:Multi Processor代表多CPU uname -r只显示内核版本号
uname -a还显示发行版的相关信息.
# uname -a
Linux caizhi 2.6.9-42.0.3.ELsmp #1 SMP Fri Oct 6 06:21:39 CDT 2006 i686 i686 i386 GNU/Linux RedHat操作系统:
# cat /etc/redhat-release
CentOS release 4.4 (Final)
# cat /etc/issue
CentOS release 4.4 (Final)
Kernel \r on an \m 安装文件的准备
mysql-5.0.33.tar.gz
httpd-2.2.4.tar.gz
php-5.2.0.tar.gz
curl-7.15.1.tar.bz2
freetype-2.2.1.tar.gz
gd-2.0.33.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.15.tar.bz2
libxml2-2.6.26.tar.gz
zlib-1.2.3.tar.gz
ZendOptimizer-3.2.2-linux-glibc21-i386.tar.gz ================================================================== 安装文件放入/home/www/lamp 目录中
首先进入安装目录
# cd /home/www/lamp 安装
MySQL 的安装
# useradd -g mysql mysql
//shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
#tar zxf mysql-5.0.33.tar.gz
# cd mysql-5.0.33
# ./configure --prefix=/usr/local/mysql --with-extra-charsets=all \
--with-unix-socket-path=/usr/local/mysql/var/mysql.sock
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# cd /usr/local/mysql
# bin/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql var
# chgrp -R mysql .
# bin/mysqld_safe --user=mysql & //测试安装是否成功
如果显示
# Starting mysqld daemon with database from /usr/local/mysql/var
表示安装成功 自动运行MySQL
在MySQL二进制包里面,有一个叫myslq.server的启动脚本程序。把它复制到/etc/rc.d/init.d目录里面:
# cd /etc/rc.d/init.d
# cp /usr/local/mysql/support-files/mysql.server mysql
# chmod +x mysql
最后,把MySQL添加到你系统的启动服务组里面去。
# /sbin/chkconfig --del mysql
# /sbin/chkconfig --add mysql
测试MySQL
首先启动MySQL:
# /etc/rc.d/init.d/mysql start 更改管理员密码
# mysqladmin -u root password newpassword 为了安全起见,你必须更改ROOT本地MYSQL链接密码与空链接帐号,并删除测试数据库,修改方式如下 :
# cd /usr/local/mysql/bin
# ./mysql -u root -pnewpassword
mysql>use mysql
update user set Password=PASSWORD('xxxxxx') where User='root' //更改默认ROOT空口令为 xxxxxxxx
mysql>update user set user="xxxxxxxx" where user="root" //更改默认ROOT用户名为 xxxxxxxx
mysql>select Host,User,Password,Select_priv,Grant_priv from user //选中这几个要修改的表
mysql>delete from user where user='' //删除空用户名帐号
mysql>delete from user where password='' //删除空密码
mysql>delete from user where host='%' //删除帐号 %
mysql>drop database test //丢弃测试数据库test
mysql>flush privileges
mysql>quit; //退出 创建longjob数据库,并授权long用户
mysql>create database longjob;
mysql>GRANT ALL PRIVILEGES ON `longjob` . * TO 'long'@'localhost' WITH GRANT OPTION ; 创建vpopmail数据库,并授权vpopmail用户
mysql>CREATE DATABASE vpopmail;
mysql>GRANT select,insert,update,delete,create,drop ON vpopmail.* TO vpopmail@localhost IDENTIFIED BY 'vpoppwd';
mysql>FLUSH PRIVILEGES;
mysql>QUIT ================================================================== Apache2 的安装
下载的是httpd-2.2.4.tar.gz
代码:
# tar -zxf httpd-2.2.4.tar.gz
# cd httpd-2.2.4
# ./configure --prefix=/usr/local/apache2 --enable-shared=max --enable-module=rewrite --enable-so
# make
# make install
# make clean
自动运行http
在http二进制包里面,有一个叫apachectl的启动脚本程序。把它复制到/etc/rc.d/init.d目录里面:
# cd /etc/rc.d/init.d
# cp /usr/local/apache2/bin/apachectl httpd
# vi httpd
在#!/bin/sh 后面添加下面2行代码
# chkconfig:2345 85 15
# description:Apache is a World Wide Web Server
最后,把httpd添加到你系统的启动服务组里面去。
# /sbin/chkconfig --del httpd
# /sbin/chkconfig --add httpd
测试Apache
首先启动Apache:
# /etc/rc.d/init.d/httpd start
设置开机自启动
# vi /etc/rc.d/rc.local加上
# /usr/local/apache/bin/apachectl start ==================================================================== PHP5 的安装
因为要用到GD库等一堆东西,所以加载的比较多一点
libxml2 安装
代码:
# tar -zxf libxml2-2.6.26.tar.gz
# cd libxml2-2.6.26
# ./configure --prefix=/usr/local/libxml2
# make
# make install
# make clean zlib安装
代码:
# tar -zxf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
# make clean libpng安装
代码:
# tar -jxf libpng-1.2.15.tar.bz2
# cd libpng-1.2.15
# cp scripts/makefile.std makefile
编辑 makefile 将 prefix 改为 prefix=/usr/local/libpng2
# make
# mkdir /usr/local/libpng2
# make install
# make clean freetype安装
tar -zxf freetype-2.2.1.tar.gz
cd freetype-2.2.1
./configure --prefix=/usr/local/freetype
make
make install jpeg安装
代码:
# tar -zxf jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure --prefix=/usr/local/jpeg6 --enable-shared
# make
# mkdir /usr/local/jpeg6
# mkdir /usr/local/jpeg6/include
# mkdir /usr/local/jpeg6/lib
# mkdir /usr/local/jpeg6/bin
# mkdir /usr/local/jpeg6/man
# mkdir /usr/local/jpeg6/man/man1
# make install-lib
# make install
# make clean
GD安装
源代码:gd-2.0.33.tar.gz 或者 Gd-2.0.26gif.tar.gz (带 GIF支持)
代码:
# tar -zxf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --prefix=/usr/local/gd2 --with-zlib --with-freetype \
--with-png=/usr/local/libpng2 --with-jpeg=/usr/local/jpeg6
编辑 Makefile 231 行 将
CPPFLAGS = -I/usr/local/jpeg6/include
改为
CPPFLAGS = -I/usr/local/jpeg6/include -I/usr/local/libpng2/include
# make
# make install
# make clean
注:或者采用支持GIF的GD库,安装方法同上! 安装 curl 支持ftp库函数
tar -zxf curl-7.15.0.tar.gz
cd curl-7.15.0
./configure --prefix=/usr/local/curl
make
make install
开始安装PHP5
源代码:php-5.2.0.tar.gz 安装
代码:
# tar -zxf php-5.2.0.tar.gz
# cd php-5.2.0
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs \
--with-libxml-dir=/usr/local/libxml2 --with-mysql=/usr/local/mysql \
--with-zlib-dir=/usr/local/zlib --with-jpeg-dir=/usr/local/jpeg6 \
--with-png-dir=/usr/local/libpng2 --with-config-file-path=/usr/local/lib \
--with-gd --with-freetype --disable-debug --enable-safe-mode --enable-soap \
--enable-trasns-sid --enable-memory-limit --enable-short-tags --disable-posix \ --enable-exif --enable-ftp --enable-sockets --enable-mbstring=all --enable-sysvsem
# make
# make install
# make clean
# cp /usr/src/php-5.2.0/php.ini-dist /usr/local/lib/php.ini
把php加到apache 里去
代码:
# vi /usr/local/apache2/conf/httpd.conf
添加
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
#红色的在我的httpd.conf 里已经添加好了的
然后放个test.php文件上去测试看看成功
vi /usr/local/apache2/htdocs/phpinfo.php
PHP 代码:
<?php
phpinfo();
?> vi /usr/local/lib/php.ini 编辑php.ini文件,找到
;default_charset="iso-8859-1"
增加一行:default_charset="gb2312" 加载mysql模块。在文件中添加
extension=mysql.so 以上步骤都执行完后。
在浏览器地址栏中输入:
http://localhost/phpinfo.php
出现php说明页面说明安装成功。 ================================================================ 安装Zend
# tar -zxf ZendOptimizer-3.2.2-linux-glibc21-i386.tar.gz
# cd ZendOptimizer-3.2.2-linux-glibc21-i386
# ./install
注意php.ini 的目录
安装好以后
# vi /usr/local/Zend/etc/php.ini
在末尾添加下面2行代码
# zend_optimizer.optimization_level=1023
# zend_optimizer.encoder_loader=0 加密代码支持 zend_optimizer.encoder_loader 详细解释
对于这个参数,我想如果没有看过Zend Opt FAQ文档的朋友大多数并不知道。这个参数用来告诉Zend Opt是否去支持被Zend Encoder加密过的代码。默认情况下Zend Opt将支持加密过的代码。如果不使用被加密过的代码我推荐你关闭此选项。这个功能牵扯到解包反码的过程,会导致系统负荷的加重。
这个参数的值只有两个 0 关闭, 1 开启。默认为1,推荐设置为0。 优化过程 zend_optimizer.optimization_level 详细解释 这里最为重点的部分,仔细看!Zend Opt总共有10个优化过程,从理论上说开的越多性能越好。当然,理论和实际永远都存在着差距。优化过程开启的越多对性能消耗也相对也越大,Zend Opt的10个优化过程并不相同也就是说效果不是平均的。Zend公司定义的最高值(High模式)为15,这里15指的是开启1-4号优化过程。当然,很多朋友并不满足于此,毕竟最高也只开启4个优化过程连总数的一半都没有。各个优化过程的对应的数字代码(值)如下: 不使用 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 以何种方式开启优化过程是通过这些数字代码(值)相加所得的和作为此参数的参数值来控制的。如我的配置文件中zend_optimizer.optimization_level = 1023 , 这里的1023是优化过程1到优化过程10全部数字代码(值)相加得到的和,表示开启全部10个优化过程。刚才所提到的Zend公司定义的High模式值为15,15表示同时开启优化过程1-4。 现在我们来介绍上边这些配置文件中相关内容的含义:
zend_optimizer.optimization_level 《== 优化程度,这里定义启动多少个优化过程。
zend_optimizer.encoder_loader 《== 是否允许处理由Zend Encoder加密的PHP文件。
zend_extension_ts 《== 优化器所在目录。
zend_extension_manager.optimizer_ts 《== 优化器管理所在目录。 如何获知Zend Optimizer是否在运行?
答案很简单,只要用PHP的函数phpinfo()来检测便知,如下所示: 显示的结果中关于Zend Optimizer的部分就象下面这样:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.3, Copyright (c) 2003-2004, by Zend Technologies with Zend Optimizer v2.5.3, Copyright (c) 1998-2004, by Zend Technologies
表示 Zend Optimizer for PHP优化成功了。 ================================================================
安全修改设置。
1.修改/usr/local/Zend/etc/php.ini
A.首先打开安全模式,打开他的好处就是PHP文件只能访问所有者和PHP文件所有着一样的文件,即使在chroot环境下也无法访问文件夹中属主不一样的文件,类似于php shell这样的后门就没用武之地了哦,phpshell是很流行的php后门,他可以执行系统命令,就象他的名字一样,和shell很接近
safe_mode = On
B. open_basedir =/web/www/
上面的设置限制了fopen(), file()等函数可以操作的目录范围,避免了入侵者非法读取文件,一定要在/web/www后面加"/",否则/web/wwww下的文件也能被访问。
安装环境:
# cat /proc/version
Linux version 2.6.9-42.0.3.ELsmp (buildsvn@build-i386) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)) #1 SMP Fri Oct 6 06:21:39 CDT 2006
2.6.9是内核的版本号,内核的版本号是Linus领导下的开发小组开发的内核的版本号。Linux内核版本号的格式如A.B.C,其中B为偶数的的版本是稳定的版本,并且C越大的越新,相对而言bug越少,越稳定。 通常,内核版本序号是偶数表示是稳定的版本,奇数序号是不稳定的测试版本。
SMP:Multi Processor代表多CPU uname -r只显示内核版本号
uname -a还显示发行版的相关信息.
# uname -a
Linux caizhi 2.6.9-42.0.3.ELsmp #1 SMP Fri Oct 6 06:21:39 CDT 2006 i686 i686 i386 GNU/Linux RedHat操作系统:
# cat /etc/redhat-release
CentOS release 4.4 (Final)
# cat /etc/issue
CentOS release 4.4 (Final)
Kernel \r on an \m 安装文件的准备
mysql-5.0.33.tar.gz
httpd-2.2.4.tar.gz
php-5.2.0.tar.gz
curl-7.15.1.tar.bz2
freetype-2.2.1.tar.gz
gd-2.0.33.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.15.tar.bz2
libxml2-2.6.26.tar.gz
zlib-1.2.3.tar.gz
ZendOptimizer-3.2.2-linux-glibc21-i386.tar.gz ================================================================== 安装文件放入/home/www/lamp 目录中
首先进入安装目录
# cd /home/www/lamp 安装
MySQL 的安装
# useradd -g mysql mysql
//shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
#tar zxf mysql-5.0.33.tar.gz
# cd mysql-5.0.33
# ./configure --prefix=/usr/local/mysql --with-extra-charsets=all \
--with-unix-socket-path=/usr/local/mysql/var/mysql.sock
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# cd /usr/local/mysql
# bin/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql var
# chgrp -R mysql .
# bin/mysqld_safe --user=mysql & //测试安装是否成功
如果显示
# Starting mysqld daemon with database from /usr/local/mysql/var
表示安装成功 自动运行MySQL
在MySQL二进制包里面,有一个叫myslq.server的启动脚本程序。把它复制到/etc/rc.d/init.d目录里面:
# cd /etc/rc.d/init.d
# cp /usr/local/mysql/support-files/mysql.server mysql
# chmod +x mysql
最后,把MySQL添加到你系统的启动服务组里面去。
# /sbin/chkconfig --del mysql
# /sbin/chkconfig --add mysql
测试MySQL
首先启动MySQL:
# /etc/rc.d/init.d/mysql start 更改管理员密码
# mysqladmin -u root password newpassword 为了安全起见,你必须更改ROOT本地MYSQL链接密码与空链接帐号,并删除测试数据库,修改方式如下 :
# cd /usr/local/mysql/bin
# ./mysql -u root -pnewpassword
mysql>use mysql
update user set Password=PASSWORD('xxxxxx') where User='root' //更改默认ROOT空口令为 xxxxxxxx
mysql>update user set user="xxxxxxxx" where user="root" //更改默认ROOT用户名为 xxxxxxxx
mysql>select Host,User,Password,Select_priv,Grant_priv from user //选中这几个要修改的表
mysql>delete from user where user='' //删除空用户名帐号
mysql>delete from user where password='' //删除空密码
mysql>delete from user where host='%' //删除帐号 %
mysql>drop database test //丢弃测试数据库test
mysql>flush privileges
mysql>quit; //退出 创建longjob数据库,并授权long用户
mysql>create database longjob;
mysql>GRANT ALL PRIVILEGES ON `longjob` . * TO 'long'@'localhost' WITH GRANT OPTION ; 创建vpopmail数据库,并授权vpopmail用户
mysql>CREATE DATABASE vpopmail;
mysql>GRANT select,insert,update,delete,create,drop ON vpopmail.* TO vpopmail@localhost IDENTIFIED BY 'vpoppwd';
mysql>FLUSH PRIVILEGES;
mysql>QUIT ================================================================== Apache2 的安装
下载的是httpd-2.2.4.tar.gz
代码:
# tar -zxf httpd-2.2.4.tar.gz
# cd httpd-2.2.4
# ./configure --prefix=/usr/local/apache2 --enable-shared=max --enable-module=rewrite --enable-so
# make
# make install
# make clean
自动运行http
在http二进制包里面,有一个叫apachectl的启动脚本程序。把它复制到/etc/rc.d/init.d目录里面:
# cd /etc/rc.d/init.d
# cp /usr/local/apache2/bin/apachectl httpd
# vi httpd
在#!/bin/sh 后面添加下面2行代码
# chkconfig:2345 85 15
# description:Apache is a World Wide Web Server
最后,把httpd添加到你系统的启动服务组里面去。
# /sbin/chkconfig --del httpd
# /sbin/chkconfig --add httpd
测试Apache
首先启动Apache:
# /etc/rc.d/init.d/httpd start
设置开机自启动
# vi /etc/rc.d/rc.local加上
# /usr/local/apache/bin/apachectl start ==================================================================== PHP5 的安装
因为要用到GD库等一堆东西,所以加载的比较多一点
libxml2 安装
代码:
# tar -zxf libxml2-2.6.26.tar.gz
# cd libxml2-2.6.26
# ./configure --prefix=/usr/local/libxml2
# make
# make install
# make clean zlib安装
代码:
# tar -zxf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
# make clean libpng安装
代码:
# tar -jxf libpng-1.2.15.tar.bz2
# cd libpng-1.2.15
# cp scripts/makefile.std makefile
编辑 makefile 将 prefix 改为 prefix=/usr/local/libpng2
# make
# mkdir /usr/local/libpng2
# make install
# make clean freetype安装
tar -zxf freetype-2.2.1.tar.gz
cd freetype-2.2.1
./configure --prefix=/usr/local/freetype
make
make install jpeg安装
代码:
# tar -zxf jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure --prefix=/usr/local/jpeg6 --enable-shared
# make
# mkdir /usr/local/jpeg6
# mkdir /usr/local/jpeg6/include
# mkdir /usr/local/jpeg6/lib
# mkdir /usr/local/jpeg6/bin
# mkdir /usr/local/jpeg6/man
# mkdir /usr/local/jpeg6/man/man1
# make install-lib
# make install
# make clean
GD安装
源代码:gd-2.0.33.tar.gz 或者 Gd-2.0.26gif.tar.gz (带 GIF支持)
代码:
# tar -zxf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --prefix=/usr/local/gd2 --with-zlib --with-freetype \
--with-png=/usr/local/libpng2 --with-jpeg=/usr/local/jpeg6
编辑 Makefile 231 行 将
CPPFLAGS = -I/usr/local/jpeg6/include
改为
CPPFLAGS = -I/usr/local/jpeg6/include -I/usr/local/libpng2/include
# make
# make install
# make clean
注:或者采用支持GIF的GD库,安装方法同上! 安装 curl 支持ftp库函数
tar -zxf curl-7.15.0.tar.gz
cd curl-7.15.0
./configure --prefix=/usr/local/curl
make
make install
开始安装PHP5
源代码:php-5.2.0.tar.gz 安装
代码:
# tar -zxf php-5.2.0.tar.gz
# cd php-5.2.0
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs \
--with-libxml-dir=/usr/local/libxml2 --with-mysql=/usr/local/mysql \
--with-zlib-dir=/usr/local/zlib --with-jpeg-dir=/usr/local/jpeg6 \
--with-png-dir=/usr/local/libpng2 --with-config-file-path=/usr/local/lib \
--with-gd --with-freetype --disable-debug --enable-safe-mode --enable-soap \
--enable-trasns-sid --enable-memory-limit --enable-short-tags --disable-posix \ --enable-exif --enable-ftp --enable-sockets --enable-mbstring=all --enable-sysvsem
# make
# make install
# make clean
# cp /usr/src/php-5.2.0/php.ini-dist /usr/local/lib/php.ini
把php加到apache 里去
代码:
# vi /usr/local/apache2/conf/httpd.conf
添加
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
#红色的在我的httpd.conf 里已经添加好了的
然后放个test.php文件上去测试看看成功
vi /usr/local/apache2/htdocs/phpinfo.php
PHP 代码:
<?php
phpinfo();
?> vi /usr/local/lib/php.ini 编辑php.ini文件,找到
;default_charset="iso-8859-1"
增加一行:default_charset="gb2312" 加载mysql模块。在文件中添加
extension=mysql.so 以上步骤都执行完后。
在浏览器地址栏中输入:
http://localhost/phpinfo.php
出现php说明页面说明安装成功。 ================================================================ 安装Zend
# tar -zxf ZendOptimizer-3.2.2-linux-glibc21-i386.tar.gz
# cd ZendOptimizer-3.2.2-linux-glibc21-i386
# ./install
注意php.ini 的目录
安装好以后
# vi /usr/local/Zend/etc/php.ini
在末尾添加下面2行代码
# zend_optimizer.optimization_level=1023
# zend_optimizer.encoder_loader=0 加密代码支持 zend_optimizer.encoder_loader 详细解释
对于这个参数,我想如果没有看过Zend Opt FAQ文档的朋友大多数并不知道。这个参数用来告诉Zend Opt是否去支持被Zend Encoder加密过的代码。默认情况下Zend Opt将支持加密过的代码。如果不使用被加密过的代码我推荐你关闭此选项。这个功能牵扯到解包反码的过程,会导致系统负荷的加重。
这个参数的值只有两个 0 关闭, 1 开启。默认为1,推荐设置为0。 优化过程 zend_optimizer.optimization_level 详细解释 这里最为重点的部分,仔细看!Zend Opt总共有10个优化过程,从理论上说开的越多性能越好。当然,理论和实际永远都存在着差距。优化过程开启的越多对性能消耗也相对也越大,Zend Opt的10个优化过程并不相同也就是说效果不是平均的。Zend公司定义的最高值(High模式)为15,这里15指的是开启1-4号优化过程。当然,很多朋友并不满足于此,毕竟最高也只开启4个优化过程连总数的一半都没有。各个优化过程的对应的数字代码(值)如下: 不使用 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 以何种方式开启优化过程是通过这些数字代码(值)相加所得的和作为此参数的参数值来控制的。如我的配置文件中zend_optimizer.optimization_level = 1023 , 这里的1023是优化过程1到优化过程10全部数字代码(值)相加得到的和,表示开启全部10个优化过程。刚才所提到的Zend公司定义的High模式值为15,15表示同时开启优化过程1-4。 现在我们来介绍上边这些配置文件中相关内容的含义:
zend_optimizer.optimization_level 《== 优化程度,这里定义启动多少个优化过程。
zend_optimizer.encoder_loader 《== 是否允许处理由Zend Encoder加密的PHP文件。
zend_extension_ts 《== 优化器所在目录。
zend_extension_manager.optimizer_ts 《== 优化器管理所在目录。 如何获知Zend Optimizer是否在运行?
答案很简单,只要用PHP的函数phpinfo()来检测便知,如下所示: 显示的结果中关于Zend Optimizer的部分就象下面这样:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.3, Copyright (c) 2003-2004, by Zend Technologies with Zend Optimizer v2.5.3, Copyright (c) 1998-2004, by Zend Technologies
表示 Zend Optimizer for PHP优化成功了。 ================================================================
安全修改设置。
1.修改/usr/local/Zend/etc/php.ini
A.首先打开安全模式,打开他的好处就是PHP文件只能访问所有者和PHP文件所有着一样的文件,即使在chroot环境下也无法访问文件夹中属主不一样的文件,类似于php shell这样的后门就没用武之地了哦,phpshell是很流行的php后门,他可以执行系统命令,就象他的名字一样,和shell很接近
safe_mode = On
B. open_basedir =/web/www/
上面的设置限制了fopen(), file()等函数可以操作的目录范围,避免了入侵者非法读取文件,一定要在/web/www后面加"/",否则/web/wwww下的文件也能被访问。
相关阅读 更多 +