Zeus 4.3+php+Zend Optimizer for Linux安装指南(第二版) ,但是针对实际情况和有一些讲的不详细的地方做了优化。
具体软件的版本为(顺序即为安装顺序):
RedHatAS3
MySQL
Zeus4.3
PHP 4.3.10
ZO 2.5.7
ZPS 3.6
我会把具体的配置写在这里:
Step1:
安装RedhatAS3,没什么好说的,只要注意安装过程中选择软件包的那一段留一个Xwindow和一个DevelopmentTools就可以了。XWindow可能有用,DevelopmentTools是用来编译后来的软件用的。记得选择一个简体中文,不然后来没法显示中文实在是很麻烦。就是这样安装也需要1.5G的空间,我真是服了。这个地方需要注意的是具体分区的配置,似乎可以把swap分区或者log分区单独列出来?不是很清楚。
另外当中的防火墙设定最好设为无,否则后来的Zeus管理需要用到9090端口。
Step2,MySQL,Linux (x86, glibc-2.2, static, gcc) Standard 4.1.8
从FTP上下载MySQL
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
ftp 192.168.100.2
get mysql-standard-4.1.8-pc-linux-i686.tar.gz
解压缩,说明一下,tar -xvzf可以直接解压缩tar.gz的文件
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
tar -xvzf mysql-standard-4.1.8-pc-linux-i686.tar.gz
编译方法:
很奇怪居然没有要求我编译?
这个是因为我下载的版本是二进制的包版本。下载一个源码版本就可以了。
Quote:
NOTE: This is a MySQL binary distribution. It's ready to run, you don't
need to configure it!
To help you a bit, I am now going to create the needed MySQL databases
and start the MySQL server for you. If you run into any trouble, please
consult the MySQL manual, that you can find in the Docs directory.
Installing all prepared tables
041230 5:48:16 [Warning] Asked for 196608 thread stack, but got 126976
Fill help tables
041230 5:48:16 [Warning] Asked for 196608 thread stack, but got 126976
To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h bbsback password 'new-password'
See the manual for more instructions.
NOTE: If you are upgrading from a MySQL <= 3.22.10 you should run
the ./bin/mysql_fix_privilege_tables. Otherwise you will not be
able to use the new GRANT command!
You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; perl run-all-tests
Please report any problems with the ./bin/mysqlbug script!
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com
Starting the mysqld server. You can test that it is up and running
with the command:
./bin/mysqladmin version
[root@bbsback mysql-standard-4.1.8-pc-linux-i686]# chown: `mysql': invalid user
A mysqld process already exists
先不管它。到时候用phpMyAdmin来管理。
现在开始安装Zeus,版本4.3
继续连上ftp,下载三个文件:
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
get Zeus_43_Linux-x86.tar
get license.key
get zeus.web
解压缩
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
tar -xzvf Zeus_43_Linux-x86.tar
cd Zeus_43_Linux-x86
./zinstall
Ctrl+C,然后输入accept同意协议,
回车,默认装在[/usr/local/zeus]目录下
Quote:
Installation options:
1. Full install of both admin server & web server
2. Stand-alone install of admin server
3. Clustered install of web server
H. Help
Choose installation option [1]: 1
选择安装1,全部安装
输入key文件地址:
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
/root/tmp/src/license.key
输入管理员密码
Quote:
Please choose a password for the admin server:
Re-Enter
不允许SNMP
Quote:
Enable SNMP support for web package? Y/N [N]:
用Nobody用户/用户组执行
Quote:
Choose a UNIX user for the web process to run as [nobody]:
Choose a UNIX group for the web process to run as [nobody]:
允许开机运行Zeus
Quote:
Would you like Zeus to start at boot time? Y/N [Y]:
破解
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
cp -f /root/tmp/src/zeus.web /usr/local/zeus/web/bin
直接复制之后有点问题,需要手动把这个文件权限改成755(这一步并不是每次都会遇到。在as3上遇到了。奇怪)
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
chomod 755 /usr/local/zeus/web/bin/zeus.web
Step3,PHP 4.3.10
ftp上搞一个php下来:
Quote:
get php-4.3.10.tar.gz
tar -xvzf php-4.3.10.tar.gz
cd php-4.3.10
编译,php安装在 /usr/local/php,php.ini文件在/etc
Quote:
./configure --prefix=/usr/local/php --enable-fastcgi --enable-force-cgi-redirect --with-config-file-path=/etc --with-zlib --with-mysql --with-xml
安装,并且拷贝php.ini文件
Quote:
make
make install
cp php.ini-dist /etc/php.ini
安装ZendOptimize 2.5.7
Quote:
./install.sh --zeus
确认php.ini文件位置时输入/etc
去掉Zeus自带的PHP
Quote:
rm /usr/local/zeus/php/php.zeus
给刚做的PHP一个链接
Quote:
ln -s /usr/local/php/bin/php /usr/local/zeus/php/php.zeus
安装ZPS
具体的操作就不多说了。注意以下几点:
Quote:
ZPS安装参数需要是./install.sh --zeus
ZPS安装的时候需要license,目前掌握的license是一个*.dat文件,记得把它改成*.lic文件放到ZPS的安装目录下。
ZPS的/zend/etc/cache.ini这个文件和上级文件加都需要设置为777属性
2005-11-5 19:57
sup
管理员
积分 1432
发帖 1309
注册 2005-6-6
#2
安装linux下zeus+zps+zeo+mysql+php手记
Posted by AsIwish in [技术文章] at 2005-07-11 19:51:23
其实也没什么 不过安装zps的时候dat文件遇到了一些问题
后来反复替换怎么就好了 我至今还不知道
主要是mysql的几个问题 需要记下
还有高春辉提醒的 装了Zend Performance Suite3.6.0之后
它会用自带的2.1.1的zo替代原来你的zo版本
所以还要重新装一次ZO就可以了
Quote:
一般情况下都是不能正常链接数据库,错误提示一般为:
ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
其实网上大家问的最多的都是整个问题,说什么链接不到mysqld.sock,其实大家不妨看看mysql的错误日志就明白怎么回事,我这里的错误日志是在
/var/lib/mysql/*.err 你会发现mysql只所以不能启动,是因为/var/lib/mysql的权限不允许mysql服务访问,英文mysql默认是调用mysql用户来启动服务的,好了,既然知道是什么原因找到不能启动,那就简单了。我们只要
chown -R mysql:mysql /var/lib/mysql 就行,如果还是启动不了,再慢慢调试权限,反正一般启动不了都是权限的问题。
如果大家还是不能启动不了的话,那就用我的比较繁琐的权限的设置,反正我每次都是这么做的,一般不会有问题,见下:
chown -R root /usr/local/mysql
chgrp -R mysql /usr/local/mysql
chown -R root /usr/local/mysql/bin
chgrp -R mysql /usr/local/mysql/bin
chgrp -R mysql /var/lib/mysql
chmod 777 /var/lib/mysql
chown -R root /var/lib/mysql/mysql
chgrp -R mysql /var/lib/mysql/mysql
chmod 777 /var/lib/mysql/mysql
chown -R root /var/lib/mysql/mysql/*
chgrp -R mysql /var/lib/mysql/mysql/*
chmod 777 /var/lib/mysql/mysql/*
chmod 777 /usr/local/mysql/lib/mysql/libmysqlclient.a
几点可能要注意的:
my.cnf等文件在/usr/share/mysql
如果mysql目录里面有没有mysql.sock
在mysql的shell里面运行
mysql_install_db --user=mysql
同时最后要做一个符号连接
执行ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
参考文章 只看来他mysql的权限部分 写的不错
Quote:
原文地址:http://www.5ilinux.com/lamp01.html
Linux+Apache+Mysql+PHP典型配置
调试环境:Redhat9.0 Apache1.3.29 Mysql3.23.58 PHP4.3.4
Linux系统的安装我就不讲了,这是基本功,其实这篇文章在类似Redhat的其他linux也应该通用,大家只要掌握我提供的方法就行。记得安装Redhat9。0的时候不要安装系统默认的apache,mysql和php以及相关的软件。已经安装的请用rpm -e * 删除已经安装的包。
1.安装Mysql3.23.58
其实老实说直接安装Mysql官方网站提供的rpm包也是一个比较可行的办法,他的官方网站的rpm包的提供基本跟tar包发行是同步的,这点我比较喜欢,至少安装rpm包的在后面的调试中不会出现mysql库文件找不到的情况。但这里还是有必要讲一下自定义安装的步骤,毕竟网友自定义安装的还说挺多的。
软件获取:http://www.mysql.com/downloads/index.html
安装步骤:
tar zxvf mysql-3.23.58.tar.gz
cd mysql-3.23.58
./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql
make
make install
#prefix=/usr/local/mysql mysql安装的目标目录
#sysconfdir=/etc my.ini配置文件的路径
#localstatedir=/var/lib/mysql 数据库存放的路径
安装完以后要初始化数据库,当然你是升级的话不用做这步;
/usr/local/mysql/bin/mysql_install_db
如果系统没有mysql这个用户的话,最好做以下这步:
useradd -M -o -r -d /var/lib/mysql -s /bin/bash -c "MySQL Server" -u 27 mysql
然后我启动mysql
/usr/local/mysql/bin/safe_mysqld &
ok,先看看mysql能否正常工作
mysql -uroot mysql
一般情况下都是不能正常链接数据库,错误提示一般为:
ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
其实网上大家问的最多的都是整个问题,说什么链接不到mysqld.sock,其实大家不妨看看mysql的错误日志就明白怎么回事,我这里的错误日志是在
/var/lib/mysql/*.err 你会发现mysql只所以不能启动,是因为/var/lib/mysql的权限不允许mysql服务访问,英文mysql默认是调用mysql用户来启动服务的,好了,既然知道是什么原因找到不能启动,那就简单了。我们只要
chown -R mysql:mysql /var/lib/mysql 就行,如果还是启动不了,再慢慢调试权限,反正一般启动不了都是权限的问题。
如果大家还是不能启动不了的话,那就用我的比较繁琐的权限的设置,反正我每次都是这么做的,一般不会有问题,见下:
chown -R root /usr/local/mysql
chgrp -R mysql /usr/local/mysql
chown -R root /usr/local/mysql/bin
chgrp -R mysql /usr/local/mysql/bin
chgrp -R mysql /var/lib/mysql
chmod 777 /var/lib/mysql
chown -R root /var/lib/mysql/mysql
chgrp -R mysql /var/lib/mysql/mysql
chmod 777 /var/lib/mysql/mysql
chown -R root /var/lib/mysql/mysql/*
chgrp -R mysql /var/lib/mysql/mysql/*
chmod 777 /var/lib/mysql/mysql/*
chmod 777 /usr/local/mysql/lib/mysql/libmysqlclient.a
做完上面的步骤,然后把你编译目录的一个脚本COPY过去
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
用ntsysv设置使mysql每次启动都能自动运行。
好了,至此mysql安装完毕,你可以这样起动你的mysql服务
/etc/rc.d/init.d/mysqld start
下面这步比较关键,
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
大家可以不做这步,大可以在编译其他软件的时候自定义myslq的库文件路径,但我还是喜欢把库文件链接到默认的位置,这样你在编译类似PHP,Vpopmail等软件时可以不用指定mysql的库文件地址。
2.安装Apache1.3.29。我没有选择安装Apache2.0是我对他还是不放心,因为网上最新公布的apache的漏洞基本上是针对2.0,当然大家可以自己选择安装相应的版本。我这里讲的都是采用DSO动态编译的方法编译Apache.
至于有关apache的编译方法,可以参考我以前的文章《apache的静态/动态编译在apache+php+mysql的应用》 http://www.5ilinux.com/apache01.html
软件获取:http://httpd.apache.org/
tar zvxf apache_1.3.29.tar.gz
cd apache_1.3.29
修改src/include/httpd.h 增大最大线程数
#define HARD_SERVER_LIMIT 256
改成
#define HARD_SERVER_LIMIT 2560
保存退出编译apache
./configure --prefix=/usr/local/apache --enable-module=so --enable-module=rewrite --enable-shared=max --htdocsdir=/var/www &&
make &&
make install
#这里我们通过enable-module参数告诉设置脚本,我们需要启动so和rewrite模块,so模块是用来提DSO支持的apache核心模块,而rewrite模块则是用意实现地址重写的模块,由于rewrite模块需要DBM支持,如果在初次安装时没有编译进apache,以后需要用到时需要重新编译整个apache才可以实现。为此除非你可以确定以后不会用到rewrite模块,否则还是建议你在第一次编译的时候把rewrite模块编译好。
enable-shared=max 这个参数的作用时编译apache时,把除了so以外的所有apache的标准模块都编译成DSO模块。而不是编译进apache核心内。
好了安装apache很简单的哦,启动apache看看
/usr/local/apache/bin/apachectl start
然后用ie看http://你的服务器地址。应该能看到熟悉的apache羽毛标志。
3.安装PHP4.3.4
软件获取:http://www.php.net/downloads.php
tar zvxf php-4.3.4.tar.gz
cd php-4.3.4
./configure \
--prefix=/usr/local/php \
--with-mysql=/usr/local/mysql \
--enable-force-cgi-redirect \
--with-freetype-dir=/usr \
--with-png-dir=/usr \
--with-gd --enable-gd-native-ttf \
--with-ttf \
--with-gdbm \
--with-gettext \
--with-iconv \
--with-jpeg-dir=/usr \
--with-png \
--with-zlib \
--with-xml \
--enable-calendar \
--with-apxs=/usr/local/apache/bin/apxs
make
make install
#我这里由于服务器需要用到GD库,所以加了一些支持GD的编译参数 ,GD直接用了redhat自带的GD库,大家没有安装的话可以从安装盘安装,注意除了安装GD以外,还要安装libjpeg,libpng等库文件。另外--with-mysql=/usr/local/mysql指向你安装mysql的路径。--with-apxs指向apache的apxs文件的路径。
vi /usr/local/apache/conf/httpd.conf
查找
在此范围添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
然CPOPY PHP的配置文件
cp ../php4.3.4/php.ini.dist /usr/local/php/lib/php.ini
修改php.ini文件
register_globals = On
ok!重新启动一下apache服务器
/usr/local/apache/bin/apachectl restart
然后写个php测试页info.php:内容如下
phpinfo();
?>
正常的话,应该能看到php的信息了,恭喜你的Apche+Mysql+PHP安装成功。
好了写了这么多,希望对大家有所帮助!!!
还有就是大C的老版了
Quote:
Zeus 4.3+php+Zend Optimizer for Linux安装指南(第二版)
之前我曾写过Zeus 4.2及PHP/ZO在Linux下的安装,目前Zeus已升级到4.3版本,加入了对Local FastCGI的类似suexec的支持,可谓一大增强。
本文基于linux而写出。zeus是一个著名的web服务器软件,其效能远在apache1/2之上,是整台服务器用户跑论坛的首选,对内存小于1G而流量非常大的用户,换用zeus会比apache多获得一倍的负载能力。
本文提供方法在redhat linux AS3,PHP 4.3.9,Zend Optimizer 2.5.5验证通过,所配置参数为适应每15分钟在线1000人以上的,使用Discuz! 2.0/3.0的中大型论坛所优化
上篇文章中我们使用Remote FastCGI的方式,通过调用8002端口实现Zeus+PHP的搭建,本文为了充分实现Zeus 4.3所具有的suexec功能,将把PHP安装为Local方式。
进入一个目录 如
cd /usr/local/src
找一个zeus 4.3 for linux的破解版本下载
wget http://download.discuz.net/Zeus_43_Linux-x86.tgz
wget http://download.discuz.net/Zeus_4.3_Linux_crack.zip
unzip Zeus_4.3_Linux_crack.zip #把破解包直接解压在/usr/local/src
tar xvzf Zeus_43_Linux-x86.tgz
cd Zeus_43_Linux-x86/
开始安装
./zinstall
按CTRL+C 打入accept
Where should the product be installed? [/usr/local/zeus]: 回车
Installation options:
1. Full install of both admin server & web server
2. Stand-alone install of admin server
3. Clustered install of web server
H. Help
Choose installation option [1]: 回车
Enter the key filename, or leave blank for unlicensed mode: /usr/local/src/license.key (这里的 key 是假的,真正的破解在之后覆盖二进制程序中进行)
Please choose a password for the admin server: ****** (输入管理员密码)
Re-enter: ****** (重新输入密码)
Would you like Zeus to start at boot time? Y/N [Y]: (回车)
以上是安装过程 很容易的就装好了 下面进行破解
cp -f /usr/local/src/zeus.web /usr/local/zeus/web/bin
如果有apache在跑 先把他停掉 避免80端口冲突
/usr/local/apache/bin/apachectl stop
安装php
cd /usr/local/src
感觉澳大利亚的会快一点(实际 200K/s 左右)
wget http://www.php.net/get/php-4.3.9.tar.gz/from/au.php.net/mirror
tar xvzf php-4.3.9.tar.gz
cd php-4.3.9/
./configure --prefix=/usr/local/php --enable-fastcgi --enable-force-cgi-redirect --with-config-file-path=/etc --with-zlib --with-mysql --with-xml
make
make install
cp php.ini-dist /etc/php.ini
安装Zend Optimizer
cd /usr/local/src
wget http://download.discuz.net/ZendO ... glibc21-i386.tar.gz
tar xvzf ZendOptimizer-2.5.5-linux-glibc21-i386.tar.gz
cd ZendOptimizer-2.5.5-linux-glibc21-i386
./install.sh
一阵回车 问Confirm the location of your php.ini file的时候打入/etc
问Are you using Apache web server?的时候选No
下面把Zeus自带的PHP换掉
rm /usr/local/zeus/php/php.zeus
给刚刚编译的PHP做一个符号连接
ln -s /usr/local/php/bin/php /usr/local/zeus/php/php.zeus
设置Zeus
访问 http://your.com:9090 (你的域名地址或IP地址)
用户名 admin 密码:刚才设定的密码
进入Zeus管理控制台,点Create a Virtual Server 把相关的六个选项填好 不多说
注意:1. 指向的web目录要有权限读 2. 如果在 Host Name and Port 写域名,请确定该域名是绑定到当前IP的,否则请填写当前服务器IP地址
进入刚刚加入的virtual server,点Third Party中的PHP
Enabling PHP Support:选 Enabled
将 Specify the maximum number of PHP processes that should be created for each user:
由默认的 8 改为 5
将 Specify the maximum number of requests that an individual PHP process should handle. This prevents errant PHP processes from consuming too much memory.
由默认的 500 改为 200
其实这样仍然能够相应 5*200=1000个并发PHP请求了,足矣。
Apply Changes,然后点上面的 This configuration has been modified. Click here for details or to make it take effect.
然后 Commit
点左边Url Handling下面的Directory Requests
Index Files中的内容为 index.html, index.htm, index.shtml, index.cgi, index.php
如果不需要 index.shtml, index.cgi,可以将其去掉
!!重要!!下面的 Directory Listing,一定要Disabled,不然有安全问题。
回到Zeus的9090端口管理界面 把刚才设置的虚拟主机Start,放一个 phpinfo 进去,应该已经可以看到PHP装好了。
启动Zeus的命令为 /usr/local/zeus/start-zeus
停止Zeus的命令为 /usr/local/zeus/stop-zeus
重启Zeus的命令为 /usr/local/zeus/restart-zeus
如果安装的时候没有设定让Zeus开机自动启动,可编辑/etc/rc.local
加入一行
/usr/local/zeus/start-zeus
使得Zeus在开机时自动运行
今晚还有点时间,如果有兴趣,可以接着按下面的步骤装ZPS(Zend Performance Suite)。
cd /usr/local/src
wget http://download.discuz.net/ZendP ... glibc21-i386.tar.gz
下载一个可用的密匙
wget http://download.discuz.net/zend_performance_suite.dat
解压并安装
tar xvzf ZendPerformanceSuite-3.6.0-Linux_glibc21-i386.tar.gz
cd ZendPerformanceSuite-3.6.0-Linux_glibc21-i386
./install.sh --zeus
Search for a license file on my disk
输入刚才下载的key位置 /usr/local/src
剩下他自动给的参数都是对的,只要一路回车就可以
/usr/local/zeus/restart-zeus 重启一下 ZPS应该就装好了
事实上这次升级,Zeus 4.3+PHP这个组合最闪亮的地方在于FastCGI的权限设定,在虚拟主机的FastCGI设置中,具备了如下选项:
Owner of the requested file
Owner of the FastCGI executable
Owner of the document root
Specified uid / gid:
我们可以轻松的指定PHP运行的用户,配合php.ini中open_base限定到用户目录(如/home),可彻底解决Zeus 4.2中的FastCGI权限问题。
冰影舞涯 于 2006-10-03 09:24:00发表:
本菜鸟还没接触这类知识,收藏先