Chinaunix首页 | 论坛 | 博客
  • 博客访问: 194734
  • 博文数量: 76
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 490
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-12 16:58
文章分类

全部博文(76)

文章存档

2011年(3)

2010年(52)

2009年(21)

我的朋友

分类:

2010-09-02 20:58:22

-OS X 10.3 Apache+PHP+MySQL+MyAdmin 简易攻略 
本文转自风霆洞天兄之高贴,感觉很好,特此推荐。 

说明:以下只是本人实际操作心得,适用于OS X 10.3版本。 
此文为原创,版权属于Utopia Legend。 

我尽量把过程写的简单易懂,但有部分操作需要在Terminal下完成,所以有一定Terminal
操作经验的用户可能会较快上手。如果没有,呢么最好不要着急动手,先耐心看完全文,然
后再决定如何开始。 

Apache Web Server 
建立自己的网站,首先就要有服务器软件,OS X 10.3里提供的 个人网业共享功能其实就
是基于Apache Web Server的服务。启动该服务,打开sharing,选择personal web 
sharing就可以了。 
确认启动,在Terminal里面输入:shell>cat /etc/hostconfig 
你将会在显示的文件中找到“WEBSERVER=-YES-“该段文字,说明已经可以使用了。 
OS X已经给你准备好了测试需要用的网页了,选择在sharing界面下personal web sharing,
你会看到在底部有两个页面的地址,一般选择第二个地址,因为这个是在你自己用户目录下
的。点击该地址,就能在Safari里看到你的第一个网页了。关于地址,如果你是单机联网,
呢么你在MAC上和远程电脑访问的地址都是http://外网ip/~用户名/;而如果你使用路由
器的话,你在内网访问只能用内网ip,远程访问就必须使用外网ip了。 

默认的网页保存地址在~/Sites里,接下来只要把你写好的网页放在该文件夹,确认读取权
限后就可以访问了。 
Apache的默认首页是~/Sties/目录下的index.html,也就是说当你访问~用户
名/时,Apache会默认返回?/Sites/index.html。你可以修改该设置适合网站的需要。

打开Apache的设置文件 
shell>vi /etc/httpd/httpd.conf 
搜索 DirectoryIndex 找到 
# DirectoryIndex: Name of the file or files to use as a pre-written HTML 
# directory index. Separate multiple entries with spaces. 


DirectoryIndex index.html index.htm 

你可以按照上面的说明,排列默认主页的先后。 

PHP 
PHP是一种脚本编程语言,主要用于Web服务器的服务器端应用程序。当PHP脚本被客户端
请求时,在服务器端的PHP程序开始执行,并把结果返回给客户端。现在有不少论坛就是用
PHP写的。OS X 10.3同样也已经内置了PHP,不过版本不是最新的。 
启动PHP,如果熟悉UNIX,可以用vi在Terminal下完成,也可以用BBEdit。修改该文件需
要有root权限,所以在这之前先激活root账户。 
打开Apache的设置文件 
shell>vi /etc/httpd/httpd.conf 
搜索php关键字 
#LoadModule php4_module libexec/httpd/libphp4.so 
去掉开头的“#“ 
继续搜索到 
#AddModule mod_php4.c 
同样去掉“#“ 
然后保存文件,退出。 

在Terminal下重新启动Apache Web Server 
shell>sudo apachectl restart 
return>httpd restarted 

确认php启动 
shell>tail /var/log/httpd/error_log 
找到这句 
[Wed Dec 22 12:51:18 2004] [notice] Apache/1.3.33 (Darwin) PHP/4.3.2 configured -- resuming normal operations 
就说明运行了。 

那么马上写一个PHP的页面试试吧 
用编辑器写一个test.php文件,内容如下 
html> 
body> 
h1>PHP Test Page 
? phpinfo()?> 
/body> 
/html> 
写好后保存在~/Sites/目录下。 
访问~yourusername/test.php 
你会看到一个信息报告,说明PHP已经在你server端正常运行了。 
现在你已经可以在网上找一些PHP源代码,加在你的网页上运行了。 

MySQL 
光有PHP,还不完整,许多网站的登陆和搜索功能都需要有数据库支持,所以接下来介绍一
下MySQL。MySQL是一个开放源代码的小型数据库管理系统,因为其体积小,速度快,加
上免费,所以是个人和小型网站的首选。 
OS X 10.3的Personal中没有安装MySQL,在Server版本中是内置的。 
安装MySQL,首先建议参考其官方网站的说明 
http://dev.mysql.com/doc/mysql/en/index.html 
关于在MAC OS上安装MySQL的说明在这里 
http://dev.mysql.com/doc/mysql/en/Mac_OS_X_installation.html 
我安装的是带有PKG的安装包,Installer package (Mac OS X v10.3) 
Standard 4.1.8 23.1M 
http://dev.mysql.com/downloads/mysql/4.1.html 
下载文件后,.dmg镜像文件自动打开,可以看到两个.PKG文件,先安装 mysql-standard-4.1.8-apple-darwin7.6.0-powerpc.pkg,然后再安装MySQLStartupItem.pkg。 
安装完毕后进入Terminal 
shell> sudo /Library/StartupItems/MySQLCOM/MySQLCOM start 
系统会要求root密码。 
此时MySQL就应该启动了,接下来是配制了。 

MySQL有两个很重要的shell命令,mysql和mysqladmin,这两个命令在
/usr/local/mysql/bin/目录下,每次都要打这一长串目录名会很麻烦,所以我们首先用修
改系统PATH来解决。 
在Terminal下 
shell>PATH=/Library/MySQL/bin:$PATH 
确认修改 
shell>echo $PATH 
你会看到路径名已经增加了 
return>/usr/local/mysql/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/
local/teTeX/bin/powerpc-apple-darwin-current 

然后我们开始配制 
首先设定root的密码 
shell> mysqladmin -u root password ******* 
shell> mysqladmin -u root -h localhost password ******* 
两行的密码要一致 

然后进入MySQL 
shell>mysql –u root –p 
输入密码回车 
此时你会发现shell的提示符变为mysql> 

下面介绍一下一些基本的命令 
mysql>SHOW DATABASES; 
显示所有的数据库 
mysql>USE databasename; 
调用数据库 
mysql>SHOW TABLES; 
现实表单项目 
mysql>DESCRIBE tablename; 
显示子项内容 
mysql> SELECT * FROM tablename; 
显示数据内容 
mysql>CREATE DATABASE databasename; 
创建数据库 

MySQL支持外部程序访问,所以访问时,必须提供MySQL的访问用户名和密码,一般来
说,都会有一个root管理权限的用户,然后再设置拥有使用权限的普通用户。 
创建用户名,进入MySQL 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' 
-> IDENTIFIED BY '*******' WITH GRANT OPTION; 
或者 
mysql> INSERT INTO user 
-> VALUES('localhost','username',PASSWORD('*******'), 
-> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y'); 
mysql> FLUSH PRIVILEGES; 

所有的用户名都在mysql.user下,可以通过 
mysql>USE mysql; 
mysql> SELECT * FROM user; 
察看用户信息 
安装MySQL时,系统会自动生成一个当前用户名的MySQL用户账户,可以通过以下语句建
立账户密码,这样就不用设置新用户账号了。 
mysql> INSERT INTO user (Host,User,Password) 
-> VALUES('localhost','username',PASSWORD('*******')); 
mysql> FLUSH PRIVILEGES; 

修改密码用 
mysql> UPDATE user SET Password = PASSWORD('*******') 
-> WHERE Host = 'localhost' AND User = 'username'; 
mysql> FLUSH PRIVILEGES; 

删除用户账户 
mysql>DELETE FROM mysql.user WHERE User = ‘username’ and Host = ‘hostname’; 
mysql> FLUSH PRIVILEGES; 

此时,你已经可以通过shell访问MySQL了 
通过PHP网页访问数据库只需要提供username(用户名),password(密码),host(主机
名),database(数据库名)这些信息就可以了。 

phpMyAdmin 
我最后要介绍的是MySQL的外部管理软件,因为如果通过shell管理MySQL会比较麻烦。
phpMyAdmin是一款基于PHP的针对MySQL的数据库管理软件,可以让用户以简洁的方式
实现数据库的操作。 
官方网站  
我用的是 
Latest stable version is: 2.6.0-pl3版本 
下载文件后解压缩出一个文件夹,然后把这个文件夹复制或剪切到~/Sites/文件夹里。运
行之前需要先配制 
用BBEdit打开软件目录文件夹下的config.inc.php 
修改一下几项 
$cfg['blowfish_secret'] = 'cookie'; 

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

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

$cfg['Servers'][$i]['auth_type'] = 'cookie'; 
保存文件退出。 
然后打开Safari访问该软件首页 
 
注:上面的地址需要根据实际情况修改。 

然后输入用户名和密码就可以进入数据库管理了。 

在通过外部程序调用MySQL时可能会出现一个问题,就是php网页不能正确调用数据库或
是在phpMyAdmin中输入用户名和密码时出现以下错误提示: 
? Error: 1251 SQLSTATE: 08004 (ER_NOT_SUPPORTED_AUTH_MODE) 
Message: Client does not support authentication protocol requested by server; 
consider upgrading MySQL client 

我在网上找到了一个解决方法: 
在Terminal下,进入MySQL 
mysql>USE mysql; 
mysql>UPDATE user SET password = old_password ('*******') WHERE user = 
'username'; 
mysql>FLUSH PRIVILEGES; 
依次对账户进行修改就能解决。 

好了,现在你已经可以Mac OS X上建立自己的交互式网站或是PHP的论坛了。
阅读(1403) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~