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
这样就好了
Apache+Mysql+PHP 套件