Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3322122
  • 博文数量: 631
  • 博客积分: 10716
  • 博客等级: 上将
  • 技术积分: 8397
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-01 22:35
文章分类

全部博文(631)

文章存档

2020年(2)

2019年(22)

2018年(4)

2017年(37)

2016年(22)

2015年(1)

2013年(12)

2012年(20)

2011年(19)

2010年(20)

2009年(282)

2008年(190)

分类:

2009-06-05 09:43:26

SAMP(Solaris、Apache、MySQL和Perl/Python/PHP)是从LAMP(Linux、Apache、MySQL和PHP)演化而来,其框架如图 1 。
  图 1 SAMP 框架
  一、SAMP下载安装过程
  SAMP 的安装和配置,有两种方法:
  ( 1 )分别依次下载、安装和配置 Apache 、 MySQL 和 PHP/Perl/Python  。
  ( 2 ) 下载、安装和配置 CoolStack 。 CoolStack 是一个包含了最为常用的 、且为 Sun Solaris 操作系统特别优化过的开源软件包。而其中的重点就是 Apache 、 PHP 和 MySQL 。因此,使用这个包, AMP 可以运行在最佳状态。这里推荐直接安装 CoolStack 包 。CoolStack官方网站:   , 下载前必须注册一个有效ID 才能进行下载。在下载的页面上点击cool stack 1.2下载,这里有适用于不同平台的安装版本(SPARC, Intel x86/AMD64),1.2版本的 CoolStack下载页面:
  )
  主要包括如下软件包:
  · CSKamp 。即 AMP 组件包: CSKapache2 、 CSKphp5 和 CSKmysql32 。此包已经过预先配置,保证安装后就可以协同工作。其中的 MySQL 是 32 位版本。
  · CSKruntime 。是其他大多数包都依赖的运行时包。 既然是被依赖包,安装时就要注意:必须先安装此运行时包,再安装其他依赖包。
  · CSKmysql 。 MySQL5 的 64 位版本包。
  · CSKperl 。 Perl5 包及相关的一些扩展库。
  · CSKphplibsbundle 。各种 PHP 扩展包所依赖的库,具体又包括三个包: CSKtds 、 CSKncurses 和 CSKphplibs 。
  · CSKmemcached 。著名的分布式对象缓存工具: Memcached 。
  · CSKruby 。 Ruby 及 rubygems 、 rails 封包。
  · CSKsquid 。 Web 缓存工具 Squid 。
  · CSKtomcat 。纯 Java 的 Apache Tomcat ,和 tomcat.apache.org 上的 tomcat 不同。
  · CSKlighttpd 。轻量级Web 服务器 lighttpd 。
  1 安装CSKruntime
  # bunzip2 CSKruntime_1.2_x86.pkg.bz2
  # mkdir /var/tmp/CSKruntime-test
  # pkgtrans CSKruntime_1.2_x86.pkg /var/tmp/CSKruntime-test/
  # pkgadd -d /var/tmp/CSKruntime-test/
  安装过程省略。
  2 安装CSKamp
  # bunzip2 CSKamp_1.2_x86.pkg.bz2
  # mkdir /var/tmp/CSKamp-test
  # pkgtrans CSKamp_x86.pkg /var/tmp/CSKamp-test/
  # pkgadd -d /var/tmp/CSKamp-test/
  安装过程省略。
  3 安装CSKphplibsbundle
  # bunzip2 CSKphplibsbundle_1.2_x86.pkg.bz2
  # mkdir /var/tmp/CSKphplibsbundle-test
  # pkgtrans CSKphplibsbundle_1.2_x86.pkg /var/tmp/ CSKphplibsbundle-test /
  # pkgadd -d /var/tmp/ CSKphplibsbundle-test /
  4 验证安装版本
  使用命令如下:# pkginfo -l CSKapache2
  pkginfo -l CSKapache2
  PKGINST:  CSKapache2
  NAME:  Apache httpd
  CATEGORY:  application
  ARCH:  i386
  VERSION:  2.2.6
  BASEDIR:  /
  VENDOR:  Apache
  DESC:  httpd is built with MPM pre-fork and modules to support PHP, SSL and Perl.    PSTAMP:  Oct/29/2007
  INSTDATE:  8?? 07 2008 16:59
  HOTLINE:  Please see
  STATUS:  全部安装
  FILES:   1378 个已安装的路径名
  7 个共享的路径名
  55 目录
  92 可执行文件
  1 setuid/setgid可执行文件
  59831 个已使用的块(近似)
  可以看到Apache 提供的是 worker 模块,而不是老的 prefork.c 模块。
  图 2、3 是PHP5和Mysql 32位版本的 验证界面。


二、 Mysql服务器的初始化和启动
  拷贝配置文件
  cp /opt/coolstack/mysql_32bit/share/mysql/my-medium.cnf /etc/my.cnf
  添加mysql 用户和用户组:
  # groupadd mysql
  # useradd -g mysql mysql
  初始化mysql如图 4 ,命令如下:
  # /opt/coolstack/mysql_32bit/bin/mysql_install_db

  图 4 初始化mysql
  初始化mysql后会自动建立一个/opt/coolstack/mysql_32bit/data 目录,设置 mysql 用户对 data 文件夹的访问权限:
  # chown -R mysql:mysql /opt/coolstack/mysql_32bit/data
  现在可以启动 MySQL 进程了:
  # /opt/coolstack/mysql_32bit/bin/mysqld_safe &
  其执行过程如图 5 所示。

  测试mysql客户端
  使用命令建立一个简单数据库
  # /opt/coolstack/mysql_32bit/bin/mysqladmin create testdb
  # /opt/coolstack/mysql_32bit/bin/mysql
  Welcome to the MySQL monitor.  Commands end with ; or \g.
  Your MySQL connection id is 3
  Server version: 5.0.45-standard-log Source distribution
  Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
  mysql>
  mysql> use testdb
  Database changed
  mysql>
  mysql> exit
  说明:通过 CoolStack 安装后的 MySQL ,字符集为 UTF-8 ,连接校对格式为 utf8_general_ci 。
 三、把mysql和apache设置为SMF服务
  SMF是Solaris 10操作系统中的软件服务管理工具。它替代了以前操作系统的/etc/*.d中的服务运行脚本。对于使用过Linux的读者来说,SMF的功能类似"ntsys"中的"守护进程";对于使用过UNIX的读者来说,这个功能就是替代部分目录/etc/rc*.d中的启动脚本程序(还有一本分没有替代)和超级服务器(inetd)的功能。另外,使用过Solaris 9的读者知道,Solaris 9是没有这个管理工具的,这是Solaris 10的新功能。把mysql和apache设置为SMF服务,并且随Solaris 服务器同时启动:
  # svcadm enable svc:/network/csk-mysql32:default
  # svcadm enable svc:/network/csk-http:CSKapache2
  查看Mysql和apache 服务状态命令如下:
  #   svcs -a | grep csk-mysql32
  online  9:17:31 svc:/network/csk-mysql32:default
  服务的状态有以下几种类型:
  ? degraded,服务已经启动,但是在受限制的状态运行。
  ? disabled,服务处于关闭状态。
  ? legacy_run,这个服务是不被SMF所管理的,但是可以被SMF所监测到。
  ? maintenance,维护状态。这个服务有大量的错误且应由管理者进行修复。
  ? offline,这个服务已经启动了,但是处于离线运行状态,没有在线运行。
  ? online,服务已经启动,并且在线运行。
  ? uninitialized,服务正处于初始化状态。
 四、测试SAMP 环境
  启动mysql服务器
  # svcadm enable csk-mysql32
  启动Apache 服务器
  # svcadm enable csk-http
  说明:mysql和apache 服务器关闭命令依次如下:
  测试Apache,选择菜单 " 应用程序 "|"Internet"|"Firefox Web 浏览器 " ,打开 Firefox ,在地址栏输入 ,看 Apache 是否成功运行。若出现了标题为 "Cool Stack from the OpenSolaris Web Stack project" 的首页,说明 Apache 能成功提供基础的 HTML 服务了。如图 6 。

  图 6 测试Apache服务器
  测试 Apache 是否能解析 PHP 文档。使用vi编辑一个文件phpinfo.php
  # cd /opt/coolstack/apache2/htdocs/
  # vi phpinfo.php
  
  
  

Hello SAMP!
  
  
  
  
  在地址栏输入 如果出现图 7 表示php解析成功。

  图 7测试 Apache 是否能解析 PHP 文档
  常见故障排除:
  如果Apache 不能解析 PHP 文档,修改php配置文件: /opt/coolstack/php5/lib/php.ini ,添加两行:
  extension="mysql.so"
  extension="mysqli.so"
  修改apache配置文件/opt/coolstack/apache2/conf/httpd.conf,添加一行:
  LoadModule php5_module modules/libphp5.so
  总结:本文使用Solaris 版本是U4 版本,另外同样可以适用于Open Solaris, SXDE 。CoolStack 有1.1 、1.2 、1.3RC 三个版本本文使用的是1.2。AMP 还主要应用在各类 Linux 平台上,构成了有名的 LAMP 架构。而Solaris 上的 AMP即SAMP 目前成为堪与 LAMP 、 WAMP ( Windows + AMP )和 MLAP ( Mac OS + AMP )媲美的Web 开发平台。

阅读(2911) | 评论(0) | 转发(0) |
0

上一篇:DNS实验记录

下一篇:Solaris 10 SAMP 设置

给主人留下些什么吧!~~