首页 > 代码库 > Apache+Mysql+PHP 套件

Apache+Mysql+PHP 套件

最近要装个Apache+Mysql+PHP的一个环境。 google下后,发现现在的安装变得越来越简单了。不再需要麻烦的配置安装,只需简单执行个sh就搞定了。

那我google到的有这么几个,分别对应不同的平台,首先是Windows下的套件安装有EasyPHP,Uniform Server;

Solaris下的有SAMP, 支持各个平台的有XAMPP,这个也是在网上声誉最好的, 不过在支持Solaris10下是有问题的。 所以建议solaris的平台使用SAMP。 我这里转帖一个写的很详细的SAMP的安装步骤

 

来源于:http://www.chinasolaris.com/viewthread.php?tid=1185&extra=page%3D1 

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官方网站: http://cooltools.sunsource.net/coolstack/  , 下载前必须注册一个有效ID 才能进行下载。在下载的页面上点击cool stack 1.2下载,这里有适用于不同平台的安装版本(SPARC, Intel x86/AMD64),1.2版本的 CoolStack下载页面:
  https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_SMI-Site/en_US/-/USD/DownloadSingleSoftware-Start?ProductID=H.9IBe.o7LYAAAEbXXUGcQZU&LICENSE-x8JIBe.ofkIAAAEbYHUGcQZU=on&s_eVar4=cds&VVA_00000000005000063844=English&VVA_00000000005000063845=Solaris%2010%20OS%20(x86)
  主要包括如下软件包:
  · CSKamp 。即 AMP 组件包: CSKapache2 、 CSKphp5 和 CSKmysql32 。此包已经过预先配置,保证安装后就可以协同工作。其中的 MySQL 是 32 位版本。
  · CSKruntime 。是其他大多数包都依赖的运行时包。 既然是被依赖包,安装时就要注意:必须先安装此运行时包,再安装其他依赖包。
  · CSKmysql 。 MySQL5 的 64 位版本包。
  · CSKperl 。 Perl5 包及相关的一些扩展库。
  · CSKphplibsbundle 。各种 PHP 扩展包所依赖的库,具体又包括三个包: 
  · 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: 
  INSTDATE:  8?? 07 2008 16:59
  HOTLINE:  Please see http://httpd.apache.org/bug_report.html
  STATUS:  全部安装2
  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 
  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 testdb9 
  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 ,在地址栏输入 http://localhost ,看 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
  <html>
  <body>
  <p>Hello SAMP!</?>
  <?php phpinfo(); ?>
  </body>  
  </html>
  </code>
  在地址栏输入 http://localhost/phpinfo.php 如果出现图 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. U‘ Z4 m7 R# }" k7 F
  总结:本 文使用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 开发平台。

 

其中我加红那段,并不是每个人执行的命令都一样。 我们应该先用这个命令查看下svcs -a|grep csk 

online         13:15:28 svc:/network/http:apache22-csk
online         13:15:46 svc:/application/database/mysql:mysql32-csk

然后根据具体的内容来使用下面的命令,比如向我这里的环境,接下来我就要使用

svcadm enable svc:/application/database/mysql:mysql32-csk

svcadm enable svc:/network/http:apache22-csk 

来把他们的状态由disable 变为 online

 

接着我们启动apache和mysql

svcadm enable apache22-csk

svcadm enable mysql32-csk 

 

这样就好了