下列转自:http://www.shadowlong.cn/learn_notes/linux/2009/11/17/centos%E5%AE%89%E8%A3%85amp%E8%BF%98%E6%9C%89gdzend%E7%AD%89%E7%BB%84%E4%BB%B6/

1 安装


1.1 CentOS5.1

• 所有需要安装的包都放在/usr/src下,解压也是解压在/usr/src下。
• 所有的软件都是安装在/usr/local下。
ps aux|grep mysql

编译安装有的时候安装不了,没办法安装下面表的方法就可以完全成功:

1. 从http://www.mysql.com下载二进制版的Mysql安装包 //这个MYSQL是二进制版的,不用编译
2. # chmod 755 mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz
//
3. # tar xfz mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz //将解压后生成的目录,复制到/usr/local/下并改名为mysql
4. # groupadd mysql
# useradd mysql -g mysql
// 建立mysql组
//建立mysql用户并且加入到mysql组中
5. # cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
在 support-files目录下有4个模版文件,我们选择其中一个座位Mysql的配置文件,覆盖/etc/my.cnf(系统默认的配置,其中设置了性能参数和Mysql的一些路径参数)
6. # cd /usr/local/mysql
# ./scripts/mysql_install_db –user=mysql
进入mysql目录
//初试化表并且规定用mysql用户来访问。初始化表以后就开始给mysql和root用户设定访问权限
7. # chown -R root . //设定root能访问/usr/local/mysql
8. # chown -R mysql data
//设定mysql用户能访问/usr/local/mysql/data ,里面存的是mysql的数据库文件.这个目录是在/etc/my.cnf中有配置,在mysql_install_db时产生。
9. # chown -R mysql data/.
//设定mysql用户能访问/usr/local/mysql/data/mysql下的所有文件
10. # chgrp -R mysql .
//设定mysql组能够访问/usr/local/mysql
11. # /usr/local/mysql/bin/mysqld_safe –user=mysql &
运行mysql
如果没有问题的话,应该会出现类似这样的提示:
[1] 42264
# Starting mysqld daemon with databases from /usr/local/mysql/var
如果出现 mysql ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题,Log文件的通常在/etc/my.cnf中配置。大多数问题是权限设置不正确引起的。
12. 用如下命令修改MYSQL密码
# /usr/local/mysql/bin/mysqladmin -u root password yourpassword
//默认安装密码为空,为了安全你必须马上修改.
13. # cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod 700 /etc/init.d/mysqld
# chkconfig –add mysqld
# chkconfig –level 345 mysqld on
//copy编译目录的一个脚本
//设置使mysql每次启动都能自动运行
14. # service mysqld start
# netstat -atln
//启动mysqld服务
//查看3306端口是否打开。要注意在防火墙中开放该端口。


5.2 安装apache

1:编译安装
tar zxvf httpd-2.2.8.tar.gz 
cd httpd-2.2.8
./configure –prefix=/usr/local/apache2 –enable-so –enable-rewrite
echo $?
make && make install
/usr/local/apache2/bin/apachectl configtest
/usr/local/apache2/bin/apachectl start
/usr/local/apache/bin/apachectl stop
2:修改默认启动页
vi /usr/local/apache2/conf/httpd.conf
DirectoryIndex index.html 改为
DirectoryIndex index.html index.htm default.htm default.html index.php index.php3 index.jsp
#ServerName www.example.com:80 改为
ServerName www.example.com:80

3:apache 开机启动的办法
1:#echo “/usr/local/apache/bin/apachectl start” >>/etc/rc.local(系统启动时服务自动启动)
2:创建一个httpd启动脚本,内容如下:
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
vi /etc/init.d/httpd
在第三行添加以下内容
#chkconfig:345 85 15
#description: Start and stops the Apache HTTP Server.

chmod +x /etc/rc.d/init.d/httpd
chkconfig –add httpd

修改乱码
步骤1:   
在httpd.conf中将Include conf/extra/httpd-autoindex这个模块的注释去掉
@vi /usr/local/apache/conf/httpd.conf
步骤2:    
在httpd-autoindex.conf中加入IndexOptions Charset=UTF-8
@vi /usr/local/apache/conf/extra/httpd-autoindex.conf

5.3 安装GD

1:安装ZLIB2

######zlib#############

tar zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
make
make install clean

2:安装PNG

##########libpng###########

tar zxvf libpng-1.2.26.tar.gz
cd libpng-1.2.26

cp scripts/makefile.linux ./makefile
./configure –prefix=/usr/local/libpng

make
make install clean

3:安装freetype

##########freetype#########

cd freetype-2.3.5 
./configure 
make
make install

4:安装JPEG6


#########jpeg###############

tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b
mkdir -pv /usr/local/jpeg/{,bin,lib,include,man/man1,man1}
./configure –prefix=/usr/local/jpeg –enable-shared –enable- static
make
make install

5:安装GD
########GD###########

tar zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure –with-png –with-freetype –with-jpeg=/usr/local/jpeg/

make
make install

5.4 安装php

1:安装LIBXML2
#####libxml2 #####

tar zxvf libxml2-2.6.31.tar.gz
cd libxml2-2.6.31
./configure –prefix=/usr/local/libxml2
make
make install
cp xml2-config /usr/bin

2::安装PHP5.2.5

#########php##########

tar zxvf php-5.2.5.tar.gz 
cd php-5.2.5
./configure –prefix=/usr/local/php5 –with-mysql=/usr/local/mysql5 –with-apxs2=/usr/local/apache2/bin/apxs –with-jpeg-dir=/usr/local/jpeg –with-freetype-dir=/usr/local/include/freetype2 –with-zlib –with-png-dir=usr/local/libpng12 –with-libxml-dir=/usr/local/libxml2 –with-gd –enable-ftp –enable-sockets
make
make test

make install


3:配置
cp php.ini-dict /usr/local/php5/lib/php.ini
编辑httpd.conf
/usr/local/apache2/conf/httpd.conf
加载php模块,去掉注释,我的版本是缺省就启用的。
LoadModule php5_module        modules/libphp5.so

加上下面两行
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps


5.5 安装zend

tar -zxvf ZendOptimizer-3.0.0-linux-glibc23- x86_64.tar.gz
cd ZendOptimizer-3.0.0-linux-glibc23-x86_64
./install

5.6 安装phpmyadmin

cp -rf phpMyAdmin-v2.11.5.2 /usr/local/apache2/htdocs/phpmyadmin

cd /usr/local/apache2/htdocs/phpmyadmin/

cp config.sample.inc.php config.inc.php
vi config.inc.php
$cfg['blowfish_secret'] = ”改为
$cfg['blowfish_secret'] = ‘dd’

只要不为空就可以了,这样就可以登陆,如果还有问题,就修改一下语言就解决“配置文件现在需要绝密的短语密码(blowfish_secret)”这个错误了。

**********************************************

安装zend提示成功后
php -v 却看不到zend版本 phpinfo()也是一样的原因:php.ini文件路径问题
解决方法
php -i | grep php.ini 就可以找到 当前php使用的php.ini文件
比如 编译安装时没有指定php.ini存放路径 我的系统中就在 /usr/local/lib下面

而一般zend默认安装后生成的php.ini在/etc/目录下面或/usr/local/Zend/etc
手动指定php使用zend opt生成的php.ini
php -c /etc/ -v
如果可以看到zend opt正确加载
那么做个连接就好了 连接到php默认读取的php.ini路径下面
比如
ln -sf /etc/php.ini /usr/local/lib[root@localhost /]# php -vPHP 4.4.2 (cli) (built: Jan 22 2006 12:59:19)Copyright (c) 1997-2006 The PHP GroupZend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.9, Copyright (c) 2003-2006, by Zend Technologies with Zend Optimizer v2.6.2, Copyright (c) 1998-2006, by Zend TechnologiesOk 正常了 phpinfo()看到的当然也是一样的

有的时候还有一些情况下 php -i 或php -v 在控制台下可以看到zend opt,
但是 apache 执行phpinfo的输出里面却看不到
一般是因为 调用php的时候zend模块不能加载, 比如AS4里面 就是这样的
因为 as4下面默认的php安装后读取库文件的路径 是在/usr/lib下面 ,
而php.ini文件中加载zend模块是在zend安装路径的lib目录中
比如/usr/local/Zend/lib
这时apache在执行php时 不能加载zend模块 所以 在控制台里php -v 可以正常
但是apache 却没有加载zend。 解决办法 先把zend模块copy到
/usr/lib里面 然后改一下php.ini里面zend加载模块部分

**********************************************

我在安装了 v3.3.0 v3.0.1 v.3.3.3几个版本,安装顺利,没有报错。却发现phpinfo信息里面只有with Zend Extension Manager 而没有 with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies 这一行信息。

检查我的php.ini信息路径在/usr/local/php5/lib/php.ini,已经生成到/usr/local/Zend/etc/php.ini的链接文件,并且文件后面也追加了
[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3
zend_optimizer.version=3.3.3
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so
相关的配置路径
测试了很多遍,找不到解决的办法,只是感觉和php的配置文件有关或没有生效,仔细在看phpinfo的信息发现

Configuration File (php.ini) Path /usr/local/php5

而我的php.ini文件是在/usr/local/php5/lib 下查看编译php信息看到–with-config-file-path=/usr/local/php5′ 看来是编译php时已经把php.ini的路径给修改了不是默认的/usr/local/php5/lib下的路径,

重新按照正确的php.ini路径安装配置或者直接

ln -s /usr/local/Zend/etc/php.ini /you_path/php.ini

重新启动apache

查看phpinfo信息

Configuration File (php.ini) Path /usr/local/php5
Loaded Configuration File /usr/local/Zend/etc/php.ini

zend optimizer的信息也正确显示了。

*********************************************

配置Apache的虚拟目录

<VirtualHost 127.0.0.1>
ServerName www.yourdomain.com
DocumentRoot “/opt/iNewS4/htdocs” #域名的根目录直接指向静态目录,这样就可以直接使用域名访问静态首页
Alias /admincp “/opt/iNewS4\AdminCP” #这个是iNewS的后台管理地址,可以复杂一点
Alias /Install “/opt/iNewS4\Install” #这个可以在安装完成删除
</VirtualHost>

*****************************************

VSFTPD的安装网上有很多教程这里就不多说了,这里主要是针对做主机空间服务的朋友在安装好vsftpd后如何为用户增加ftp账号
先来看一看我们一般在*inux系统下面如何增加用户的
#adduser 用户名<———-你要加的用户名
#passwd 用户名<———-你要设置密码的用户名
回车后系统会给出以下提示:
Changing password for user XX用户名.
New password:
BAD PASSWORD: it does not contain enough DIFFERENT characters
Retype new password:
passwd: all authentication tokens updated successfully.

但像以上这样增加用户是不行的,加样加出来的用户为普通用户,有系统登陆权限,所以我要在adduser命令后后面加上参数,如下:

[root@srsman]# adduser -g ftp -s /sbin/nologin srsman
[root@srsman]# passwd beinan
Changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

这样加出来的用户也是普通用户,但这个用户是不能登入系统的,只能是登入FTP
通过上面的命令加的用户系统会在/home目录下建立一个同名的文件夹,用户FTP上来后指向的目录也为此目录,如何为ftp用户指定到特定的目录呢?
命令如下:
[root@srsman]# adduser -d /opt/srsman -g ftp -s /sbin/nologin srsman
[root@srsman]# passwd srsman
Changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

这样就为系统增加了一个名为srsman,目录指向为/opt/srsman的ftp用户






6:软件

ncurses

http://ftp.gnu.org/pub/gnu/ncurses/ncurses- 5.6.tar.gz

安装GD库和GD库所需的环境
zlib
http://www.zlib.net/zlib-1.2.3.tar.gz
jpeg
ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
freetype
http://download.savannah.gnu.org/releases/freetype/freetype- 2.3.5.tar.gz
png
ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng- 1.2.26.tar.gz
GD
http://www.libgd.org/releases/gd-2.0.35.tar.gz

安装php必须安装libxml
wget ftp://xmlsoft.org/libxml2/libxml2-2.6.31.tar.gz

apache2.2.8
http://apache.mirror.phpchina.com/httpd/httpd- 2.2.8.tar.gz
phpmyadmin2.11.5.2
http://4.gxdx1.crsky.com/200804/phpMyAdmin- v2.11.5.2.rar

Zend3.3
http://downloads.zend.com/optimi … glibc21-i386.tar.gz

php5.2.5
http://cn.php.net/distributions/php- 5.2.5.tar.gz
mysql5.051
http://mirror.trouble- free.net/mysql_mirror/Downloads/MySQL- 5.0/mysql-5.0.51a.tar.gz

VN:F [1.9.4_1102]

如果您的centos系统需要安装Zend Optimizer(比如virtualmin/webmin就没有安装zend optimizer),请复制下面1行命令,用root登录centos,粘贴,回车,一路回车即可完成安装zend optimizer(32位、64位的linux系统都支持!):

wget http://www.CTOHome.com/linux-vps-pack/zend.sh;sh ./zend.sh;

然后一路YES,OK和回车,安装就完成了。一般来说,不需要另外编辑php.ini文件就可以正常工作了。

如果您是64位的contos/linux系统,那么要注意安装64位的zend optimizer:

上面的1行命令会自动判断64位系统,并自动下载64位的zend optimizer!

http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz  (64位)

Zend optimizer 3.3.9有一些新的改动,不需要安装了,直接在php.ini文件里面引用.so文件即可:

http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz  (32位)

http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-x386.tar.gz  (64位)

Zend optimizer 3.3.9使用说明:

ZendOptimizer-3.3.9-linux-glibc23-x86_64]# more README-ZendOptimizer
Zend Optimizer installation instructions
----------------------------------------
Important: if you are installing this product because you received a message from a web site telling you to install Zend Optimizer a
nd you are *not* the administrator of that web site STOP!.  You do not need to install this software. Instead, contact the website's
 system administrator and tell them that their website is displaying an error relating to Zend Optimizer and that they need to insta
ll Zend Optimizer in order to resolve this problem.

Release Information: This update is only relevant for PHP 5.2.X although this is a complete packagethat supports all other PHP versi
ons.

1. Extract the Zend Optimizer package.

2. Locate the ZendOptimizer.so (Unix) or ZendOptimizer.dll (Windows) file in the directory which
   corresponds to your version of PHP (4.3.x, 4.4.x, 5.0.x, 5.1.x, 5.2.x).

2. Add the following line to your php.ini file:
   Linux and Mac OS X:     zend_extension=<full_path_to_ZendOptimizer.so>
   Windows:                zend_extension_ts=<full_path_to_ZendOptimizer.dll>
   Windows non-thread safe: zend_extension=<full_path_to_ZendOptimizer.dll>
   (*) The Windows non-thread safe binary is only used with Zend Core 2.0.
 
3. Restart your Web server.

 

如果您需要修改某些参数,请参考下面的信息:

编辑/etc/php.ini

vi /etc/php.ini

找到:zend.ze1_compatibility_mode = Off

 

修改为:zend.ze1_compatibility_mode = On

 

保存退出!

 

编辑/etc/ispcp/fcgi/parts/php5/php.ini

 

找到:zend.ze1_compatibility_mode = Off

 

修改为:zend.ze1_compatibility_mode = On

 

在最后位置添加如下内容:

[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3
zend_optimizer.version=3.3.3
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

保存退出。然后同样以编辑/etc/ispcp/fcgi/parts/php5/php.ini的方式编辑/var/www/fcgi /domain.ltd/php5/php.ini以及/var/www/fcgi/master/php5/php.ini。至 此,zendoptimizer安装完成了!!所有的站点都可以使用ZendOptimizer!!!


备注:将zend.ze1_compatibility_mode设置成 On仅在PHP4下,如果您只安装了PHP5,建议不要修改,仍保持zend.ze1_compatibility_mode为Off状态, 即:zend.ze1_compatibility_mode = Off

相关文章:

  • 2021-04-20
  • 2022-12-23
  • 2021-12-11
  • 2021-08-28
  • 2021-12-31
  • 2022-12-23
  • 2021-08-23
猜你喜欢
  • 2021-09-17
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2021-08-05
  • 2021-08-22
  • 2022-12-23
相关资源
相似解决方案