1/18/2007

Apache+PHP4+MYSQL5+Zend Optimizer配制详细步骤

第一章 服务器软件 Apache Web Server
简单的说 Apache就是提供基本的Web 服务,你如果想实现在本机浏览网站必须要有这个东西,在Mac OS tiger内部已经集成了 Apache 1.33所以不用我们去安装,只要在系统预制(system perferences)的共享选项中打开个人网站共享。
然后打开终端(terminal)执行
shell>cat /etc/hostconfig
如果在返回的信息里面看到WEBSERVER=-YES-的字样说明你的网络服务器已经装好了,并且工作正常。这时你可以通过更改/etc/httpd/httpd.conf文件中

DirectoryIndex index.html index.htm

来确定主页的引导顺序。当完成以上的任务后你的MAC已经具备了基本的静态网站服务功能,把位于/Library/WebServer/Documents/里面的文件删掉,放上你自己的内容别人就可以用你的ip(http://yourip/)访问你的网络资源了。

第二章 PHP+Mysql
第一章过后相信你已经完成基本的WEB服务器了,但是只有HTML是不够的,现今的网站十有八九都是动态的,同时PHP语言又是网络编程中非常重要的角色,很多情况下大家都是为了在本机测试PHP程序才架设本机服务器的,所以下面我们就来架设本机的php服务。
这里我会说在MAC上假设PHP服务简直就是享受,因为操作系统已经为我们内置了PHP 4.4.1 也就是说我们不用安装任何的软件只要更改相应的设置就OK了。
转到/private/etc/httpd/下,找到httpd.conf备份到桌面上用记事本打开,搜索“PHP”
你会找到
#LoadModule php4_module libexec/httpd/libphp4.so
.
.
.
.
#AddModule mod_php4.c
将以上两行的#去掉,然后保存在把文件覆盖回去,系统会要求验证,输入用户密码。
然后打开终端重新启动 Apache Web Server
shell>sudo apachectl restart
return>httpd restarted
确认PHP启动
shell>tail /var/log/httpd/error_log
在返回的内容里面找到
[Tue May 23 09:25:02 2006] [notice] Apache/1.3.33 (Darwin) PHP/4.4.1 configured -- resuming normal operations
就说明你的PHP已经成功安装好了
那么编写一个PHP信息探针看看
打开记事本编写一个info.php文件内容如下

保存在你的 /Library/WebServer/Documents/里面然后打开浏览器访问
http://localhost/info.php看看如果有PHP信息返回来那么恭喜你你的PHP已经正常工作了,下面把你的PHP代码防到 /Library/WebServer/Documents/里面运行试试看
光有PHP还是不完整,许多的网站的登陆和搜索功能都需要有数据库的支持,这里我们选择Mysql5原因有两个,一来它是一款非常好的数据库软件,执行效率高,与MAC的兼容性非常好,二来它是免费的你可以从http://dev.mysql.com/downloads/mysql/5.0.html上免费得到它,下载时候选择给10.4的安装包同时注意选择和你的机器配制一样的安装包intel的用户选择x86版本G4的用户选择PowerPC版本,建议G5用户选择64-Bit版本。同时建议选择MAX版本。下载完成后dmg文件会自动装载,里面有两个pkg文件先安装Mysql主程序再安装 MySQLStartupItem.pkg,之后将控制版面文件打开安装到系统预制项目中。
接下来就是配制Mysql了。
在/usr/local/mysql/bin/里面有两个很重要的shell命令mysql和mysqladmin
每次使用他们都要打很长的目录所以我们修改系统PATH

shell>PATH= /usr/local/mysql/bin:$PATH
shell>echo $PATH

可以看到
Supers-Apple:~ John$ echo $PATH
/usr/local/mysql/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:
系统目录增加了这时候就可以直接使用mysql和mysqladmin了
第一步我们先要设定root用户密码
shell> mysqladmin -u root password *******
shell> mysqladmin -u root -h localhost password *******
确保两行密码一致
然后
shell>mysql –u root –p
输入密码回车
这时候你会发现提示符变成了mysql>
说明root用户密码已经设定完毕确保不要忘记!
当然通过shell管理数据库并不方便所以我介绍一个外部管理软件,phpMyadmin可以从
http://www.phpmyadmin.net/home_page/下载最新的版本,下载好了以后就可以把整个解压好的文件夹防到你的 /Library/WebServer/Documents/下面
运行前还要进行一下配制修改目录下config.inc.php
$cfg['blowfish_secret'] = 'cookie';

$cfg['Servers'][$i]['host'] = 'localhost';

$cfg['Servers'][$i]['connect_type'] = 'tcp';

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

然后访问http://localhost/phpMyAdmin/index.php 管理你的数据库。
通过外部程序调用mysql数据库可能会出现一个问题,不能正确调用或者出现错误提示
· Error: 1251 SQLSTATE: 08004 (ER_NOT_SUPPORTED_AUTH_MODE)
Message: Client does not support authentication protocol requested by server;
consider upgrading MySQL client

解决办法在终端下
mysql>USE mysql;
mysql>UPDATE user SET password = old_password ('*******')
WHERE user = 'username';
mysql>FLUSH PRIVILEGES;
逐一处理用户就可以解决。
至此你的服务器基本配制就算结束了,enjoy!


附录:ZendOptimizer 安装使用
ZendOptimizer 是Zend公司针对PHP语言知识产权加密的一款解释软件,他可以将被编译过的PHP文件解释运行,在现今的许多PHP软件产品都经过了Zend加密所以只有安装了ZendOptimizer的服务器才能运行。

安装方法:
ZendOptimizer没有提供安装程序,提供的是在终端下的安装脚本,所以我们需要激活root用户来得到最高权限来进行安装。激活root有三种方法
1:用系统安装盘启动计算机运行重设密码来设定root密码之后在重新启动计算机
2:进入实用工具NetInfo Manager>security选项里面启用
3:比较麻烦不建议用

准备php.ini文件
将/etc/php.ini.default改名为php.ini

启用root用户之后准备好 ZendOptimizer安装包(可以在http://www.zend.com)免费下载,建议版本ZendOptimizer-2.6.2-Mac_OS_X.tar.gz
下载后解压缩得到一个包含诸多文件的文件夹,打开终端
shell>login root
return>password:
输入密码回车提示符变成root#
之后将刚才解压缩得到的文件夹中的
install-tty拖如终端窗口中(建议解压缩到没有中文的目录下比如放在桌面上)
root#/ZendOptimizer-2.6.2-darwin7.8-ppc/install-tty
return>
Please, wait ...

Welcome to the Zend Optimizer 2.6.2 Installation!

For more information regarding this procedure, please see the
Zend Optimizer Installation Guide.

[To continue, press Enter]

回车继续
之后显示的是LICENSE一直按回车直到
return>
Do you accept the terms of this license?
Answer (yes or no) [YES]:
回车同意
然后输入安装路径
Please specify the location for installing Zend Optimizer [/usr/local/Zend]:
回车保持默认设置
return>Confirm the location of your php.ini file [/usr/local/Zend/etc]:
回车默认
return>
Are you using Apache Web server?
Answer (yes or no) [YES]:
回车继续
return>
Specify the full path to the Apache control utility (apachectl) [/usr/sbin/apachectl]:
回车继续
return>
Trying to determine the version of PHP.
Please wait... (this may take a few seconds)

Detecting ... \ [100%]



Installing 4_3_x_comp/ZendOptimizer.so \ [100%]


The following configuration changes have been made:


- The original php.ini was backed up to
/usr/local/Zend/etc/php.ini-zend_optimizer.bak

[To continue, press Enter]
回车继续
return>
The installation has completed successfully.
Zend Optimizer is now ready for use.
You must restart your Web server for the modifications to take effect.
[To continue, press Enter]
回车继续
Restart the Web server now?
Answer (yes or no) [YES]:
回车继续
Restarting Apache ...
Please wait... (this may take a few seconds)

Restarting ... \ [100%]


Apache has restarted successfully.
[To continue, press Enter]
回车继续
return>
root#

shell>logout
return>user$

shell>logout
return>[Process completed]
退出终端

这时访问PHP探针
在信息中如果看到
Zend Optimizer
Optimization Pass 1 enabled
Optimization Pass 2 enabled
Optimization Pass 3 enabled
Optimization Pass 4 enabled
Optimization Pass 9 enabled
Zend Loader enabled
License Path no value

说明你的 Zend Optimizer安装完毕正常工作了!!恭喜你基本上你的MAC已经具备了一台WEB服务器应有的一切功能,请尽情享用!!enjoy!!

0 comments: