Getting Started Guide (All Platforms) |
Getting Started Guide (OpenSolaris 2009.06) |
Getting Started Guide (Solaris 10 OS) |
Getting Started Guide (Red Hat Enterprise Linux)
您在寻找什么?
- Apache Web Server 入门
- MySQL Server 入门
- Lighttpd Server 入门
- Squid Proxy Server 入门
- GlassFish Enterprise Server 入门
- PHP 入门
- Python 入门
- Ruby 入门
- Tomcat Servlet Container 入门
- Memcached 入门
目录
- 1 Sun GlassFish Web Stack 1.5
- 1.1 当前版本中的更改
- 1.2 获取 Web Stack
- 1.2.1 安装单独的 Web Stack 组件
- 1.2.2 安装整个 Web Stack 包
- 1.2.3 可用的软件包
- 1.3 Web Stack UI
- 2 Web Stack IPS 系统信息库
- 3 Apache Web Server
- 3.1 自动启动服务器
- 3.2 使用 SMF 管理服务
- 3.3 使用自签名证书设置安全网站
- 3.3.1 生成证书
- 3.3.2 修改 ssl.conf
- 3.3.3 配置 Solaris Kernel SSL Proxy (KSSL)
- 4 lighttpd Server
- 5 MySQL DB Server
- 5.1 自动启动服务器
- 5.2 管理服务器
- 5.3 设置 MySQL 超级用户 密码
- 5.4 运行多个 MySQL Server 实例
- 5.5 MySQL-JDBC 驱动程序
- 5.6 MySQL 基本知识
- 5.7 从 MySQL Server 5.0 升级到 MySQL Server 5.1
- 6 Squid Proxy Server
- 6.1 配置 Squid Proxy Server
- 6.2 使用 SMF 管理服务
- 7 Sun GlassFish Enterprise Server
- 7.1 安装 GlassFish Enterprise Server
- 7.2 Apache Web Server 用作 GlassFish Server 的负载平衡器 (OpenSolaris OS)
- 8 PHP 环境
- 8.1 在何处安装 PHP?
- 8.2 可用 PHP 扩展
- 8.3 启用/禁用捆绑的 PHP 扩展
- 8.4 通过 AMP GUI 配置 PHP
- 8.5 PHP 应用程序的调试支持
- 9 Python 环境
- 10 Ruby 环境
- 10.1 Ruby Gems
- 10.2 Ruby on Rails (RoR)
- 11 Tomcat Servlet 容器
- 12 分布式缓存 memcached
- 12.1 启动 memcached 服务器
- 12.2 在 Solaris 区域中使用 memcached
- 13 自动启动服务器
- 14 将 NetBeans IDE 用作开发环境
- 15 从开发环境迁移到生产环境
- 16 OpenSolaris 2009.06 OS 中的 Web Stack 组件的文件布局
- 17 部署通用开源应用程序
- 18 针对 Web Stack 的 DTrace 支持
- 19 Web Stack 故障排除
Sun GlassFish Web Stack 1.5
Sun GlassFish Web Stack (Web Stack) 软件提供开源服务器和解释器的捆绑集合,这些服务器和解释器可在 Solaris 10 OS、OpenSolaris OS 和 Red Hat Enterprise Linux (RHEL) 等多个平台上使用。
Web Stack 软件支持以下平台:
- Solaris 10 OS (Update 5 或更高版本)。
- OpenSolaris OS (2009.06)。
- Linux (Red Hat Enterprise Linux (RHEL) 5 Update 2 或更高版本(32 位和 64 位内核))。仅为 x86 平台提供支持。
本入门指南提供关于以下平台的信息:
- OpenSolaris 2009.06 OS
- Solaris 10 OS
- Red Hat Enterprise Linux
本文档中展示的示例都使用能从控制台 (shell) 执行的命令。本文档中遵循的约定为,需要以超级用户权限运行的命令采用 # 标记法,能够以任何其他用户身份运行的命令采用 $ 标记法。
例如,
# <PERFORM_ADMIN_TASKS>
$ <PERFORM_USER_TASKS>
Web Stack 软件包括以下软件:
- 服务器软件 - Apache Web Server、Apache Tomcat、Squid Proxy Server、lighttpd。
- 数据库软件 - MySQL Server。
- 编程环境 - PHP、Perl、Ruby 和 Python。
- 高速缓存软件 - Memcached。
当前版本中的更改
下表列出了包含在此版本的 Web Stack 软件中的开源组件:
| Web Stack 组件 | 前一个版本 (1.4) | 当前版本 (1.5) |
|---|---|---|
| Apache HTTP Server | 2.2.9 | 2.2.11 |
| mod_jk | 1.2.25 | 1.2.27 |
| mod_perl | 2.0.2 | 2.0.2 |
| Lighttpd | 1.4.19 | 1.4.21 |
| memcached | 1.2.5 | 1.2.5 |
| MySQL Server | 5.0.67 | 5.0.67 + 5.1.30 |
| PHP | 5.2.6 | 5.2.9 |
| Python | 2.5.2 | 2.6.1 |
| Ruby | 1.8.6 p287 | 1.8.7 |
| Ruby Gems | 0.9.4 | 1.3.1 |
| Apache Tomcat Server | 5.5.27 | 6.0.18 |
Ruby 和 Python 不会作为 Red Hat Enterprise Linux 的 Web Stack 软件的一部分提供。需要使用 Red Hat 平台提供的解释器。
获取 Web Stack
| 注 下载适用于 Red Hat Enterprise Linux 和 Solaris 10 OS 的 Web Stack 软件后,按照 Web Stack 安装和配置指南 中提供的信息在特定平台上安装和配置 Web Stack。 |
有关获取 OpenSolaris 2009.11 OS 中的 Web Stack 软件的信息,请阅读以下部分。
安装单独的 Web Stack 组件
| 注 Web Stack 与 OpenSolaris 2009.06 完全集成,可以轻松地使用 Package Manager GUI 或 pkg install 命令进行安装。 |
OpenSolaris 2009.06 版本允许单独安装 Web Stack 组件。下表列出了安装这些组件所必需的软件包和命令。
| 组件名称 | 软件包名称 | 安装组件的命令 |
|---|---|---|
| Apache 2.2 核心、文档、mod_perl 和 mod_auth_gss | SUNWapch22,SUNWapch22d | pkg install SUNWapch22 SUNWapch22d |
| Apache 2.2 模块 | SUNWapch22m-security, SUNWapch22m-jk, SUNWapch22m-fcgid, SUNWapch22m-dtrace, SUNWapch22m-sed | pkg install SUNWapch22m-security SUNWapch22m-jk SUNWapch22m-fcgid SUNWapch22m-dtrace SUNWapch22m-sed |
| PHP5 | SUNWphp52, SUNWphp52d, SUNWphp52-mysql, SUNWphp52-pgsql, SUNWapch22m-php52 | pkg install SUNWphp52 SUNWphp52d SUNWphp52-mysql SUNWphp52-pgsql SUNWapch22m-php52 |
| MySQL Server 5.1 | SUNWmysql51 | pkg install SUNWmysql51 |
| MySQL 5.1 客户端库 | SUNWmysql51lib | pkg install SUNWmysql51lib |
| MySQL 5.1 回归测试 | SUNWmysql51test | pkg install SUNWmysql51test |
| MySQL Server 5.0 | SUNWmysql5 | pkg install SUNWmysql5 |
| MySQL 5.0 客户端库 | SUNWmysql5lib | pkg install SUNWmysql5lib |
| MySQL 5.0 回归测试 | SUNWmysql5test | pkg install SUNWmysql5test |
| Squid | SUNWsquid | pkg install SUNWsquid |
| Lighttpd | SUNWlighttpd14 | pkg install SUNWlighttpd14 |
| memcached | SUNWmemcached | pkg install SUNWmemcached |
| Web Stack 用户界面 | webstackui | pkg install webstackui |
| Apache Tomcat Server | SUNWtcat | pkg install SUNWtcat |
| 注 需要成为 超级 用户才能运行之前提及的命令。 |
可通过适用于 IPS 的 Package Manager 图形用户界面安装组件。要通过 Package Manager 安装、更新和管理软件包, 请参阅本文档。
有关在 Red Hat Enterprise Linux 和 Solaris 10 OS 上安装 Web Stack 组件的信息,请参阅 安装指南
安装整个 Web Stack 包
AMP 开发者可以下载 AMP 群集软件包,这是所有单独的 AMP 软件包的超级集合。要下载 AMP 软件包,可执行以下命令:
# pkg install amp-dev
| 注 只有超级用户才能执行 pkg install 命令。不过非超级用户可使用 pfexec 命令来调用 pkg install 命令。例如,非超级用户可执行 pfexec pkg install amp-dev。 |
| 注 amp-dev 软件包是所有 Web Stack 软件包的集合。此软件包的大小约为 650 兆字节 (MB)。需要下载和安装此软件包才能进行 AMP 开发。如果无法下载此软件包,可按照以下部分所示的方法下载单独的软件包。 |
如果您仅需要 AMP 运行时组件,可下载 amp 软件包。此软件包不包含任何开发环境软件包。
要下载和安装 amp 软件包,可执行以下命令:
# pkg install amp
可用的软件包
有关详细信息,请参阅 安装指南 。
下表显示了所有在 Solaris 10 OS 中可通过 Web Stack 软件获取的软件包的列表:
| 组件名称 | 软件包名称 |
|---|---|
| Apache HTTP Server 2.2.11 | sun-apache22 |
| mod_dtrace 0.3.1 | sun-apache22-dtrace |
| mod_fcgid 2.2 | sun-apache22-fcgid |
| mod_jk 1.2.27 | sun-apache22-jk |
| mod_perl 2.0.2 | sun-apache22-perl |
| mod_sed | sun-apache22-sed |
| mod_security | sun-apache22-security2 |
| mod_auth_gss | sun-apache22-authgss |
| - | - |
| lighttpd 1.4.21 | sun-lighttpd14 |
| memcached 1.2.5 | sun-memcached |
| - | - |
| MySQL 5.1.30 | sun-mysql51 |
| MySQL 5.0.67 | sun-mysql50 |
| MySQL 5.1.30 客户端库 | sun-mysql51lib |
| MySQL 回归测试 | sun-mysql51test 和 sun-mysql50test |
| - | - |
| PHP 5.2.9 | sun-php52 |
| APC 扩展 | sun-php52-apc |
| IDN 扩展 | sun-php52-idn |
| Memcache 扩展 | sun-php52-memcache |
| Suhosin 扩展 | sun-php52-suhosin |
| TCPWrap 扩展 | sun-php52-tcpwrap |
| XDebug 扩展 | sun-php52-xdebug |
| DTrace 扩展 | sun-php52-dtrace |
| MySQL 扩展 | sun-php52-mysql |
| PostgreSQL 扩展 | sun-php52-pgsql |
| - | - |
| Python 2.6 | sun-python26 |
| Ruby 1.8.7 | sun-ruby18 |
| Squid 2.7.STABLE5 | sun-squid |
| Apache Tomcat 6.0.18 | sun-tomcat6 |
| 支持库和注册工具 | sun-wsbase |
| 注 总是使用 Web Stack 安装程序安装单独的软件包或整个 Web Stack。 |
请参阅 Web Stack 安装和配置指南。
有关详细信息,请参阅 安装指南 。
下表显示了所有可通过适用于 Red Hat Enterprise Linux 的 Web Stack 软件获取的软件包的列表:
| Apache HTTP Server 2.2.11 | sun-apache22-2.2.11 |
| mod_fcgid 2.2 | sun-apache22-fcgid-2.2 |
| mod_jk 1.2.27 | sun-apache22-jk-1.2.27 |
| mod_perl | sun-apache22-perl-2.0.2 |
| mod_sed | sun-apache22-sed-1.0 |
| mod_security | sun-apache22-security2-2.5.9 |
| - | - |
| lighttpd 1.4.21 | sun-lighttpd14-1.4.21 |
| memcached 1.2.5 | sun-memcached-1.2.5 |
| - | - |
| MySQL 5.0.67 | sun-mysql50-5.0.67 |
| MySQL 5.1.30 | sun-mysql51-5.1.30 |
| MySQL 库 5.1.30 | sun-mysql51lib-5.1.30 |
| MySQL 5.0.67 回归测试 | sun-mysql50test-5.0.67 |
| MySQL 5.1.30 回归测试 | sun-mysql51test-5.1.30 |
| - | - |
| PHP 5.2.9 | sun-php52-5.2.9 |
| APC 扩展 | sun-php52-apc-3.0.19 |
| IDN 扩展 | sun-php52-idn-0.2.0 |
| Memcache 扩展 | sun-php52-memcache-2.2.5 |
| Suhosin 扩展 | sun-php52-suhosin-0.9.27 |
| TCPWrap 扩展 | sun-php52-tcpwrap-1.1.3 |
| XDebug 扩展 | sun-php52-xdebug-2.0.4 |
| MySQL 扩展 | sun-mysql-5.2.9 |
| PostgreSQL 扩展 | sun-pgsql-5.2.9 |
| - | - |
| Squid 2.7.STABLE6 | sun-squid-2.7.STABLE6 |
| Apache Tomcat 6 | sun-tomcat6-6.0.18 |
| 支持库和注册工具 | sun-wsbase-1.5 |
| 注 总是使用 Web Stack 安装程序安装单独的软件包或整个堆栈。 |
下表列出了 Red Hat 平台上的 Web Stack 软件 不支持的 组件:
- Ruby 解释器(使用 OS 提供的 Ruby 解释器)。
- Python 解释器(使用 OS 提供的 Python 解释器)。
- 适用于 Apache 的 mod_dtrace 插件模块(Linux 不支持 DTrace)。
- 适用于 PHP 的 Dtrace 扩展(Linux 不支持 DTrace)。
- mod_auth_gss
Web Stack UI
将 Web Stack 用于 Web 开发之前,需要初始化登录的环境。每个新登录至系统的用户必须初始化自己的环境。在下载和安装 amp-dev 软件包后初始化 Web Stack 环境。单击 应用程序 > 开发者工具 > Web Stack 初始化 启动初始化进程。
要下载和安装 Web Stack UI,可执行以下命令:
# pkg install webstackui
| 注 如果已安装 amp-dev 软件包,则同样会安装 webstackui 软件包。需要安装 webstackui 的情况是:正在单独安装 AMP 软件包,或已安装 amp 软件包。 |
因为 webstackui 软件包依赖于其他 Apache 软件包,所以如果尚未安装 Apache Web Server,那么它会在安装 webstackui 软件包时自动下载。正如前文所述,Web Stack UI 仅仅是用于控制 AMP 组件的 GUI 选项。如果尚未安装 amp-dev 软件包,则同样需要下载和配置 AMP 软件包。
安装 Web Stack UI 后,可从菜单项创建和运行复合软件包样例应用程序。转至 应用程序 > 开发者工具 > Web Stack 管理 > 样例应用程序 查找这些菜单项。
Web Stack 菜单项可快速启动/停止 Apache Web Server 和 MySQL Server。
例如,在 OpenSolaris 2009.06 中启动 Apache Web Server 的方法是:
- 单击 应用程序 > 开发者工具 > Web Stack 管理 > 初始化
- 单击 应用程序 > 开发者工具 > Web Stack 管理 > 启动 Apache2 Server/MySQL Server
初始化之后,可自定义 Web Stack 组件的多个方面。
从“启动”菜单选择“所有应用程序”>“开发者工具”>“Web Stack 管理”>“选项”。随即会显示“Web Stack 管理选项”面板。使用“常规”选项卡配置服务器,使其在系统启动时或用户登录时自动启动。
要打开编辑配置文件等高级选项,可单击 Apache、MySQL 和 PHP 选项卡上的 “高级配置” 。
| 注 必须重新启动服务器以使更改生效。 |
可编辑用于 Apache 高级配置选项的 httpd.conf 文件。有关如何配置 Apache 的信息,请参阅位于 {{/usr/apache2/2.2/manual/configuring.html.en}}的文档。
要进行 PHP 高级配置,可编辑 php.ini 文件。有关如何使用 php.ini 文件配置 PHP 的信息,请参阅位于 {{/usr/php/5.2/doc/html/configuration.html}}的文档。
要进行 MySQL 高级配置,可编辑 my.cnf 文件,此文件位于 /etc/mysql/5.1/my.cnf。
不适用于 Solaris 10 OS 和 Red Hat Enterprise Linux。
Web Stack IPS 系统信息库
Web Stack IPS 系统信息库是一个实验性的系统信息库,它托管与 Web Stack 相关的应用程序和工具。例如,可在 Web Stack 系统信息库找到 Drupal 或 PHPMyAdmin 等应用程序,然后从该系统信息库下载并安装这些应用程序,而不是直接从它们所属的站点下载。Web Stack 系统信息库中可用的应用程序都预配置为与 Web Stack 中的其他组件协同工作。
Web Stack 系统信息库的使用网址为 http://pkg.opensolaris.org/webstack。
可使用 pkg set-publisher 命令设置 OpenSolaris OS 中的其他系统信息库。有关添加 Web Stack 系统信息库的详细信息, 请参阅本文档。
有关 Web Stack IPS 系统信息库的详细信息, 请阅读本文档。
如果能够随意地从 Web Stack IPS 系统信息库安装软件,则无法通过 Sun GlassFish Portfolio 订阅提供支持。
不适用于 Solaris 10 OS 和 Red Hat Enterprise Linux。
Apache Web Server
如果已在 OpenSolaris 2009.06 中安装可选软件包 amp-dev,则无需单独下载其他 Apache Web Server 软件包。
Web Stack 与已针对 PHP 部署进行了彻底配置和优化的 Apache 2.2.11 Web Server 协同工作。可通过 NetBeans IDE 在服务器列表中添加 Apache Web Server,这样就可将您所构建的应用程序(包含基于 PHP 的 Web 应用程序)部署到 Apache Web Server。要在 NetBeans IDE 中设置 Apache Web Server,请参阅本文档中后面的部分。
要在 OpenSolaris 2009.06 中启动 Apache Web Server,可执行以下命令:
# svcadm enable -s apache22
有关配置文件布局的详细信息,请参阅 安装和配置指南
Web Stack 软件与已针对 PHP 部署进行了彻底配置和优化的 Apache 2.2.11 Web Server 协同工作。
如果正在使用 NetBeans IDE,则可在服务器列表中添加 Apache Web Server,这样就可直接从 IDE 将您所构建的应用程序(包含基于 PHP 的 Web 应用程序)部署到 Apache Web Server。要在 NetBeans IDE 中设置 Apache Web Server,请参阅本文档中后面的部分。
要在 Solaris 10 OS 中启动 Apache Web Server,可执行以下命令:
# svcadm enable -s sun-apache22
需要具备必要的权限才能执行之前的命令。
| 注 之前的命令在 32 位 prefork MPM 模式(默认模式)中启动 Apache Web Server。 |
要在 Red Hat Enterprise Linux 中启动 Apache Web Server,可执行以下命令:
# /sbin/service sun-apache22 start
要在 Red Hat Enterprise Linux 中启动 Apache Web Server (worker MPM),可执行以下命令:
- 停止 sun-apache22 服务。
$ /sbin/service sun-apache22 stop
- 编缉 /etc/opt/sun/webstack/apache2/2.2/envvars 文件以设置 HTTPD 变量,如下所示:
HTTPD=/opt/sun/webstack/apache2/2.2/bin/httpd.worker
- 启动 sun-apache22 服务。
$ /sbin/service sun-apache22 start
自动启动服务器
使用 SMF 管理服务
下表列出了 Apache Web Server 的 SMF 属性:
| SMF 属性名称 | 值 |
|---|---|
| httpd/server_type | prefork(默认值)或 worker |
| httpd/enable_64bit | true 或 false(默认值) |
| httpd/startup_options | 有效的 apachectl 选项 |
通过 SMF 启用服务器将为寻址模式和 MPM 保留当前服务器属性,这些属性最初为 32 位,其值为 prefork;可通过以下方式显示和更改这些设置:
- 要列出 SMF 属性
# svccfg -s <服务名称> listprop httpd/*
- 要切换为 32 位 prefork 服务器(一次性操作)
# svccfg -s <服务名称> setprop httpd/enable_64bit=false # svccfg -s <服务名称> setprop httpd/server_type=prefork # svcadm refresh <服务名称> - 要切换为 64 位 prefork 服务器(一次性操作)
# svccfg -s <服务名称> setprop httpd/enable_64bit=true # svccfg -s <服务名称> setprop httpd/server_type=prefork # svcadm refresh <服务名称> - 要切换为 32 位 worker 服务器(一次性操作)
# svccfg -s <服务名称> setprop httpd/enable_64bit=false # svccfg -s <服务名称> setprop httpd/server_type=worker # svcadm refresh <服务名称> - 要切换为 64 位 worker 服务器(一次性操作)
# svccfg -s <服务名称> setprop httpd/enable_64bit=true # svccfg -s <服务名称> setprop httpd/server_type=worker # svcadm refresh <服务名称> - 要启动服务器
# svcadm enable -s <服务名称>
- 要停止服务器
# svcadm disable <服务名称>
在 OpenSolaris 2008.11 OS 中,将 <服务名称> 替换为 apache22。
在 Solaris 10 OS 中,将 <服务名称> 替换为 sun-apache22。
| 注 mod_perl 和 mod_php 不能用于以 64 位模式运行的 Apache Web Server。 |
不适用于 Red Hat Enterprise Linux。
使用自签名证书设置安全网站
可设置安全 Web 服务器以通过 https. mod_ssl(包含在 Apache Web Server 中,并且支持 https)处理 Web 请求。
要为服务器配置 SSL,可执行以下任务:
- 生成证书
- 修改 Apache 配置文件
生成证书
在该示例中,我们会生成(自签名)测试证书。该证书不会被浏览器接受,因为它不是由浏览器所信任的证书授权机构 (CA) 签名的。
要配置真正的公共安全服务器,可向 Verisign 等公司付款以签署证书。
| 注 只能在一台机器上运行一个安全 Web 服务器(如果未配置 IP 别名),因为证书对应于服务器,而且必须包含它们代表的站点的名称。但是可让服务器同时在安全连接和非安全连接上运作。 |
对于 OpenSolaris 2009.06,可从 shell 运行:
$ /usr/bin/openssl req -new -x509 -nodes -out server.crt -keyout server.key
默认情况下, openssl 实用程序可在 OpenSolaris 2009.06 中使用。
对于 Solaris 10 OS,可从 shell 运行:
$ /usr/sfw/bin/openssl req -new -x509 -nodes -out server.crt -keyout server.key
默认情况下, openssl 实用程序可在 Solaris 10 OS 中使用。
对于 Red Hat Enterprise Linux,可从 shell 运行:
$ /usr/bin/openssl req -new -x509 -nodes -out server.crt -keyout server.key
默认情况下, openssl 实用程序可在 Red Hat Enterprise Linux 中使用。
系统将会询问您一些问题以填写证书的属性。 有关详细信息,请阅读本文档 。
前一个命令会生成 2 个文件:
- server.crt - SSL 证书文件
- server.key - SSL 证书密钥文件
修改 ssl.conf
这是可用的样例 ssl.conf 文件,它可从 samples-conf.d 目录中获取。
在 OpenSolaris 2009.06 中, samples-conf.d 目录位于 /etc/apache2/2.2/。
在 Solaris 10 OS 中, samples-conf.d 目录位于 /etc/opt/webstack/apache2/2.2/。
在 Red Hat Enterprise Linux 中, samples-conf.d 目录位于 /etc/opt/sun/webstack/apache2/2.2/。
将 ssl.conf 文件移动到 conf.d 目录中。
在 OpenSolaris 2009.06 中, conf.d 目录位于 /etc/apache2/2.2/。
# cp /etc/apache2/2.2/samples-conf.d/ssl.conf /etc/apache2/2.2/conf.d/ssl.conf
在 Solaris 10 OS 中, conf.d 目录位于 /etc/opt/webstack/apache2/2.2/。
$ cp /etc/opt/webstack/apache2/2.2/samples-conf.d/ssl.conf /etc/opt/webstack/apache2/2.2/conf.d/ssl.conf
在 Red Hat Enterprise Linux 中, conf.d 目录位于 /etc/opt/sun/webstack/apache2/2.2/。
# cp /etc/opt/sun/webstack/apache2/2.2/samples-conf.d/ssl.conf /etc/opt/sun/webstack/apache2/2.2/conf.d/ssl.conf
然后修改 ssl.conf 文件以更改以下参数的值:
... SSLCertificateFile "<到 server.crt 的路径>" SSLCertificateKeyFile "<到 server.key 的路径>" ...
系统会自动从 conf.d 目录读取配置文件。
重新启动 Apache Web Server 以使更改生效。
从浏览器窗口调用 https://localhost。某些浏览器会报告安全性证书无效。此时可添加异常并继续测试安全连接。
配置 Solaris Kernel SSL Proxy (KSSL)
不适用于 Red Hat Enterprise Linux。
启用了 SSL 的 Apache Web Server 可使用其 Kernel SSL 代理的服务,以改善 HTTPS 数据包处理的性能。要实现此目的,可创建 Kernel SSL 服务的实例,指定 SSL 代理端口和参数,以及侦听代理端口。
要使用 pkcs12 密钥类型来通过 Apache Web Server 配置 KSSL,可采用以下命令在 PKCS12 文件中导出密钥/证书:
$ ksslcfg create -f pkcs12 -i /kssl-conf/cert.pk12 -p /kssl-conf/cert.pass -x 8443 443
必须运行 ksslcfg 在启动 Apache Web Server 之前配置 Kernel SSL 代理。
服务器证书位于“Sun Software PKCS#11 softtoken”数据库中时,要使用 pkcs11 密钥类型配置 KSSL,可执行以下命令:
$ cryptoadm disable metaslot $ ksslcfg create -f pkcs11 -T "Sun Software PKCS#11 softtoken" -C "Server-Cert" -p ./password.conf -x 8444 444 $ cryptoadm enable metaslot
lighttpd Server
可通过 Web Stack 软件包获取 lighttpd Web Server。lighttpd 可用作其他 Web 服务器的备用服务器,这主要是因为其安全性较高、内存占用低以及易于使用。lighttpd 1.4.21 可通过 Web Stack 获取。
要在 OpenSolaris OS 中启动 lighttpd Server,可执行以下命令:
# svcadm enable -s lighttpd14
在 OpenSolaris OS 中,lighttpd 配置文件 lighttpd.conf 和配置目录 conf.d 可从 /etc/lighttpd/1.4 目录中获取。
要在 Solaris OS 中启动 lighttpd Server,可执行以下命令:
# svcadm enable -s sun-lighttpd14
在 Solaris OS 中,lighttpd 配置文件 lighttpd.conf 和配置目录 conf.d 可从 /etc/opt/webstack/lighttpd/1.4 目录中获取。
要在 Red Hat Enterprise Linux 中启动 lighttpd Server,可执行以下命令:
# /sbin/service sun-lighttpd14 start
在 Red Hat Enterprise Linux OS 中,lighttpd 配置文件 lighttpd.conf 和配置目录 conf.d 可从 /etc/opt/sun/webstack/lighttpd/1.4 目录中获取。
MySQL DB Server
MySQL Server 是使用最广泛的关系数据库服务器,并且 MySQL 软件包可从 IPS 系统信息库下载。
下表显示了可找到 MySQL 文件的位置:
| Solaris 10 OS | /opt/webstack/mysql/5.1 |
要在 Solaris 10 中启动 MySQL Server,可执行以下命令:
# svcadm enable -s sun-mysql51
需要具备必要的权限才能执行之前的命令。
| Red Hat Linux Enterprise Linux | /opt/sun/webstack/mysql/5.1 |
要在 Red Hat Enterprise Linux 中启动 MySQL Server,可执行以下命令:
# /sbin/service sun-mysql51 start
| OpenSolaris 2009.06 | /usr/mysql |
要在 OpenSolaris 2009.06 中启动 MySQL Server,可执行以下命令:
# svcadm enable -s mysql:version_51
自动启动服务器
管理服务器
不适用于 Red Hat Enterprise Linux。
下表列出了 MySQL Server 的 SMF 属性:
| SMF 属性名称 | 值 |
|---|---|
| mysql/data | /var/mysql/5.1/data |
| mysql/enable_64bit | false(默认值)或 true |
以下示例显示了如何使用 SMF:
- 要列出 SMF 属性
# svccfg -s mysql:version_51 listprop mysql/*
- 要运行 32 位(默认值)的 MySQL Server 5.1
# svccfg -s mysql:version_51 setprop mysql/enable_64bit=false # svcadm refresh mysql:version_51 # svcadm disable mysql:version_51 # svcadm enable -s mysql:version_51 - 要运行 64 位的 MySQL Server 5.1
# svccfg -s mysql:version_51 setprop mysql/enable_64bit=true # svcadm refresh mysql:version_51 # svcadm disable mysql:version_51 # svcadm enable -s mysql:version_51 - 要更改 MySQL 数据目录的位置(默认为 /var/mysql/5.1/data)
# svccfg -s mysql:version_51 setprop mysql/data=/zpool/data # svcadm refresh mysql:version_51 # svcadm disable mysql:version_51 # svcadm enable -s mysql:version_51
以超级用户的身份执行以下步骤以启动 MySQL Server:
# svcadm enable -s application/database/mysql:version_51
第一条命令显示了如何导入 MySQL Server 清单文件。此操作只需执行一次。要停止服务器,可执行以下命令:
svcadm disable application/database/mysql:version_51
| 注 MySQL Server 的默认安装会创建文件 my.cnf ,此文件位于 /etc/opt/webstack/mysql/5.1 (Solaris 10 OS)或 /etc/opt/sun/webstack/mysql/5.1 (Red Hat Enterprise Linux)。此默认配置仅适用于超小型部署。不过 mysql/5.1/my-*.cnf 下存在其他样例配置,这些配置能用于大中型部署。在启动 MySQL 服务之前,可将这些文件中的一个复制到 my.cnf 。 |
设置 MySQL 超级用户 密码
MySQL Server 超级 用户的默认密码为空字符串(也就是没有密码)。使用之前的部分中提供的命令启动 MySQL Server 后,可通过以下命令连接到 MySQL Server:
对于 Solaris 10 OS:
/opt/webstack/mysql/5.1/bin/mysql -u root
对于 Red Hat Enterprise Linux OS:
/opt/sun/webstack/mysql/5.1/bin/mysql -u root
对于 OpenSolaris 2009.06 OS:
/usr/mysql/bin/mysql -u root
要更改默认的 超级用户 密码,可执行以下步骤:
对于 Solaris 10 OS:
/opt/webstack/mysql/5.1/bin/mysqladmin -u root password {{<新密码>}}
对于 Red Hat Enterprise Linux OS:
/opt/sun/webstack/mysql/5.1/bin/mysqladmin -u root password {{<新密码>}}
| 警告 更改默认 MySQL Server 超级用户密码后才能将其部署到生产环境中。 |
设置 MySQL 超级用户 密码后,如果需要以 MySQL 超级 用户的身份使用 MySQL 提示,则需要调用以下命令:
$ mysql -u root -p
在提示处输入密码。
运行多个 MySQL Server 实例
可通过更改默认 MySQL 端口 (3306) 和默认套接字文件 (/tmp/mysql.sock) 来运行多个版本的 MySQL Server。Web Stack 软件同时拥有 MySQL Server 5.0 和 MySQL Server 5.1。在配置文件中进行这些更改后即可同时运行这两个服务器。
OpenSolaris 2009.06 OS 中的 MySQL 5.1 配置文件是 /etc/mysql/5.1/my.cnf。
Solaris 10 OS 中的 MySQL 5.1 配置文件是 /etc/opt/webstack/mysql/5.1/my.cnf。
Red Hat Enterprise Linux 中的 MySQL 5.1 配置文件是 /etc/opt/sun/webstack/mysql/5.1/my.cnf。
MySQL-JDBC 驱动程序
需要在使用 MySQL 数据库连接的 Apache Tomcat Server 或 GlassFish Enterprise Server 中部署基于 Java 的 Web 应用程序时,必须下载正确的 JDBC 驱动程序。Web Stack 软件中并未随附 MySQL-JDBC 驱动程序。
MySQL Connector/J 分发为 .zip 或 .tar.gz 归档文件,其中包含源文件和类文件,而且 JAR 归档文件的名称是:
mysql-connector-java-[WebStack:version]-bin.jar
而且驱动程序的调试版本位于以下文件中:
mysql-connector-java-[WebStack:version]-bin-g.jar
提取分发归档文件后,即可将
mysql-connector-java-[WebStack:version]-bin.jar
文件放置在类路径中以安装驱动程序。
有关详细信息, 请阅读本文档。
MySQL 基本知识
在使用 MySQL 数据库之前,需要创建数据库和表。可使用 PHPMyAdmin 应用程序或使用 mysql 命令行客户端。
# mysql -u root -p Enter the root password. mysql>
要创建新数据库,可从 MySQL 提示执行以下命令:
mysql> CREATE DATABASE database1;
要创建拥有所有特权的新用户(仅用于测试),可从 MySQL 提示执行以下命令:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
要创建具有较少特权的新用户(仅允许访问名为“database1”的数据库),可从 MySQL 提示执行以下命令:
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON database1.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword';
从 MySQL Server 5.0 升级到 MySQL Server 5.1
执行以下步骤将数据从 MySQL Server 5.0 迁移到 MySQL Server 5.1:
- 停止 MySQL Server 5.1(如果正在运行)。
- 启动 MySQL Server 5.0。
- 创建备份目录以存储 SQL 转储文件。
- 执行 mysqldump 脚本以获取所有数据库的转储。例如,执行 mysqldump --all-databases -p > dump.sql 命令。
- 停止 MySQL Server 5.0。
- 启动 MySQL Server 5.1。
- 使用 mysql -p < dump.sql 命令恢复 SQL 转储。
- 运行 mysql_upgrade 脚本。
在 OpenSolaris 2009.06 OS 中执行以下命令以从 MySQL Server 5.0 升级到 MySQL Server 5.1(假设已从 IPS 系统信息库安装这两个数据库版本,其目录分别位于 /usr/mysql/5.0 和 /usr/mysql/5.1)。
# svcadm disable mysql:version_51 # svcadm enable mysql:version_50 # mkdir /mydbbackup # cd /mydbbackup # /usr/mysql/5.0/bin/mysqldump --all-databases -p > mydbdump.sql # svcadm disable mysql:version_50 # svcadm enable mysql:version_51 # /usr/mysql/5.1/bin/mysql -p < mydbdump.sql # /usr/mysql/5.1/bin/mysql_upgrade
Squid Proxy Server
Squid Proxy Server 既是代理服务器又是 Web 高速缓存守护进程,可通过 Web Stack 软件获取。它主要用于通过高速缓存重复的请求来加速 Web Server。
可通过两种方法使用 Squid Proxy Server:
- 在 标准模式 中操作 Squid Proxy Server,可在此模式中为某些客户机高速缓存 Web 服务器的内容,而且不受数量限制。
- 在 负载平衡器模式 (Web 服务器加速)中操作 Squid Proxy Server,可在此模式中为某些服务器高速缓存客户机,而且不受数量限制。
例如,如果站点的速度因负载过大而下降,而且不希望购买其他硬件,那么可执行以下操作:
- 配置应用程序以使用 memcached。
- 使用 Squid Proxy Server 等高速缓存服务器配置 Web Server。
Squid-Apache Web Server 设置示例为:
- 运行 Apache Web Server ,所用端口为 8080
- 运行 Squid Proxy Server,所用端口为 80
- 客户机请求到达端口 80 时,Squid Proxy Server 会先检查是否已存储该请求的结果。如果已存储,则系统不会连接 Apache 服务器来处理该请求,从而降低了服务器负载。
配置 Squid Proxy Server
以下示例说明了如何为 Web 服务器上的站点 www.foo.com 配置 Squid Proxy Server。
对于 OpenSolaris 2009.06,Squid 目录是 /usr/squid
对于 Red Hat Enterprise Linux,Squid 目录是 /opt/sun/webstack/squid
对于 Solaris 10 OS,Squid 目录是 /opt/webstack/squid
在文本编辑器中打开 squid.conf 文件,此文件可从 Squid 目录获取。执行以下更改以指定 Web 站点的端口,以及为 Web 服务器指定 IP 地址。在默认情况下,Squid Proxy Server 侦听端口 3128。也可指定访问控制以允许其他用户访问您的 Web 站点。
http_port 80 accel defaultsite=www.foo.com cache_peer ip.of.server1 parent 80 0 no-query acl sites_server_1 dstdomain www.foo.com http_access allow sites_server_1
在 OpenSolaris 2009.11 OS 中,可执行以下命令以启动 Squid Proxy Server:
# svcadm enable squid
在 Solaris 10 OS 中,可执行以下命令以启动 Squid Proxy Server:
# svcadm enable sun-squid
在 Red Hat Enterprise Linux 中,可执行以下命令启动 Squid Proxy Server:
# /sbin/service sun-squid start
需要以特权用户的身份启动 Squid,或使用 sudo 前缀启动。
也可按照如下方法在 Red Hat Enterprise Linux 中启动 Squid Proxy Server:
# /etc/init.d/sun-squid start
| 注 对于 Red Hat Enterprise Linux,请参阅位于 /var/opt/sun/webstack/squid/logs 处(尤其是 cache.log 文件中)的日志以检验配置 Squid Proxy Server 时是否出错。 |
| 注 对于 Solaris 10 IS,请参阅位于 /var/opt/sun/webstack/squid/logs 处(尤其是 cache.log 文件中)的日志以检验配置 Squid Proxy Server 时是否出错。 |
使用 SMF 管理服务
在 OpenSolaris 2009.06 中,可执行以下命令启动 Squid Proxy Server:
# svcadm enable -s squid
在 Solaris 10 中,可执行以下命令启动 Squid Proxy Server:
# svcadm enable -s sun-squid
不适用于 Red Hat Enterprise Linux
Sun GlassFish Enterprise Server
Sun GlassFish Enterprise Server (GlassFish Server) 是与 Java EE 平台兼容的服务器,用于开发和部署 Java EE 应用程序和 Java Web 服务。GlassFish Server 可随意用于开发、部署和再分发。
Sun GlassFish Web Stack 软件包括可用于部署和监视 Web 应用程序的 GlassFish Server。
安装 GlassFish Enterprise Server
在 OpenSolaris OS 中,可执行以下命令安装 GlassFish Enterprise Server:
# pkg install glassfish-2
在 Red Hat Enterprise Linux 和 Solaris 10 OS,可运行 Web Stack 软件提供的安装程序来安装 GlassFish Enterprise Server。 请阅读本文档 以了解详细信息。
- 可从 此站点下载和阅读 GlassFish Enterprise Server 文档。
Apache Web Server 用作 GlassFish Server 的负载平衡器 (OpenSolaris OS)
不适用于 Solaris OS 和 Red Hat Enterprise Linux。
GlassFish Server 的第一个版本就已经开始支持 mod_jk ;常见的使用案例是 Apache Web Server 提供静态页面,并且将动态内容委托到 GlassFish Server。
GlassFish Server 同样支持将 Apache Web Server 用作 GlassFish Server 实例的群集的负载平衡器。
以下步骤显示如何将 Apache Web Server 用作 GlassFish Server 的负载平衡器:
- 设置 Web Stack 和 GlassFish Server。
设置 Web Stack 软件(如果尚未设置)。# pkg install amp
设置 GlassFish Server。
# pkg install glassfishv2
GlassFish Server 安装在 /usr/appserver 目录中。
- 配置 GlassFish Server 以使用群集配置文件。有关详细信息,请参阅 此博客日志 。
- 为 Apache Web Server 配置 SSL。
$ /usr/bin/openssl req -new -x509 -nodes -out server.crt -keyout server.key创建了两个文件,1. server.crt 和 2. server.key 。
# cp /etc/apache2/2.2/samples-conf.d/ssl.conf /etc/apache2/2.2/conf.d/ssl.conf
修改 ssl.conf 文件以更改以下参数的值:
... SSLCertificateFile "<到 server.crt 的路径>" SSLCertificateKeyFile "<到 server.key 的路径>" ...
重新启动 Apace Web Server
# svcadm restart apache22
- 从 此站点下载 OpenSolaris OS 的 GlassFish 负载平衡器插件。
- 提取文件 aslb-9.1.1-b8.jar 以获取 1. SUNWaslb.zip 和 2. {{SUNWaspx.zip}}这两个文件。
- 创建临时文件夹结构。
$ mkdir <TMP_PREFIX>/glassfish/lib/plugin
其中 TMP_PREFIX 可以为您的主目录。
将两个压缩文件 SUNWaslb.zip 和 SUNWaspx.zip 的内容提取至 <TMP_PREFIX>/glassfish/lib/plugin 文件夹。
提取内容之后,<TMP_PREFIX>/glassfish/lib/plugin 目录应该如下所示:+lib ----dtds ----install ----webserver-plugin ----lib*.so
设置必要权限。
$ chmod -R 755 <TMP_PREFIX>/glassfish/lib/plugin/lib
- 在 Apache Web Server 目录中创建所需目录。创建模块、资源和错误页面目录。
# mkdir /var/apache2/2.2/modules # mkdir /var/apache2/2.2/modules/resource # mkdir /var/apache2/2.2/modules/errorpages
- 填充资源目录。
# cp <TMP_PREFIX>/glassfish/lib/plugin/lib/webserver-plugin/solaris/apache2.2/LBPluginDefault_root.res /var/apache2/2.2/modules/resource # cp <TMP_PREFIX>/glassfish/lib/plugin/lib/webserver-plugin/solaris/apache2.2/LBPlugin_root.res /var/apache2/2.2/modules/resource
- 填充模块目录。
# cp <TMP_PREFIX>/glassfish/lib/plugin/lib/webserver-plugin/solaris/apache2.2/mod_loadbalancer.so /var/apache2/2.2/modules - 填充错误页面目录。
# cp <TMP_PREFIX>/glassfish/lib/plugin/lib/webserver-plugin/solaris/apache2.2/errorpages/* /var/apache2/2.2/modules/errorpages - 创建和填充配置目录。
# mkdir /var/apache2/2.2/conf $ cd /var/apache2/2.2/conf # cp <TMP_PREFIX>/glassfish/lib/plugin/lib/install/templates/loadbalancer.xml.example /var/apache2/2.2/conf # mv <TMP_PREFIX>/glassfish/lib/plugin/lib/install/templates/loadbalancer.xml.example <TMP_PREFIX>/glassfish/lib/plugin/lib/install/templates/loadbalancer.xml # cp <TMP_PREFIX>/glassfish/lib/plugin/lib/dtds/sun* /var/apache2/2.2/conf
- 创建和填充证书数据库目录。
# mkdir /var/apache2/2.2/sec_db_files # cp <TMP_PREFIX>/glassfish/lib/plugin/lib/webserver-plugin/solaris/apache2.2/*.db /var/apache2/2.2/sec_db_files
- 修改 httpd.conf 文件。将以下行添加至 /etc/apache2/2.2/httpd.conf 文件:
LoadModule apachelbplugin_module /var/apache2/2.2/modules/mod_loadbalancer.so <IfModule mod_apache2lbplugin.cpp> config-file "/var/apache2/2.2/conf/loadbalancer.xml" locale en </IfModule> <VirtualHost 10.12.8.107> DocumentRoot "/var/apache2/2.2" ServerName vm07 </VirtualHost>
- 重新启动 Apache Web Server
# svcadm restart apache22
- 启动 GlassFish Server 域
# svcadm enable domain1
- 在 GlassFish Server 中部署 Web 应用程序。
注:检查在 Web Stack-GlassFish 问题尚未解决之时,是否可记录之前提及的过程
PHP 环境
如果已在 OpenSolaris 2009.06 中安装可选软件包 amp-dev,则无需单独下载其他 PHP 运行时库。但是如果尚未安装 amp-dev 软件包,可执行以下命令安装 PHP 库:
# pkg install SUNWphp52 SUNWphp52-mysql SUNWphp52-pgsql SUNWapch22m-php52
在 Red Hat Enterprise Linux 和 Solaris 10 OS 中,如果已通过最常用的 amp 配置选项安装 Web Stack 软件,则无需单独安装 PHP 运行时库。但是如果尚未安装完整的 amp 堆栈,那么可安装 PHP 库,方法是在安装期间提供 php 选项。有关详细信息,请参阅 Web Stack 安装和配置指南
例如,
$ ./install php
在何处安装 PHP?
在 OpenSolaris 2009.06 中,当下载和安装之前部分中提及的 PHP 软件包时,可从 /usr/php/5.2 获取二进制文件,以及在 /etc/php/5.2 目录中获取其他运行时配置文件。
| 注 可用版本 - PHP 5.2.9。 |
在 Solaris 10 OS 中,当通过 Web Stack 软件安装 PHP 时,可从下表中提供的位置获取 PHP 配置和运行时文件:
| 平台 | 安装位置 |
|---|---|
| Solaris 10 OS | 1. 安装位置 - /opt/webstack/php/5.2/ 2. 运行时文件 - /var/opt/webstack/php/5.2/ 3. 配置文件 - /etc/opt/webstack/php/5.2 |
在 Red Hat Enterprise Linux 中,当通过 Web Stack 软件安装 PHP 时,可从下表中提供的位置获取 PHP 配置和运行时文件:
| 平台 | 安装位置 |
|---|---|
| Red Hat Enterprise Linux | 1. 安装位置 - /opt/sun/webstack/php/ 2. 运行时文件 - /var/opt/sun/webstack/php/5.2/ 3. 配置文件 - /etc/opt/sun/webstack/php/5.2/ |
可用 PHP 扩展
以下是可从 Web Stack 获取的 PHP 扩展的列表:
APC, GD, LDAP, OpenSSL, PostgresSQL, XDebug , Bzip2, Gettext, Mcrypt, PDO, SQLite, Zlib, Curl, Iconv, Memcache, PDO MySQL, Suhosin, DTrace (Solaris 10 OS and OpenSolaris OS), IDN, Mysqli, PDO PostgreSQL, TCP Wrap, FTP, IMAP, MySQL, PDO SQLite, and Tidy.
如果已在 OpenSolaris 2009.06 中安装 amp-dev 软件包,则可将某些 PHP 模块用作扩展。每个模块都有各自的 INI 文件,它们位于 /etc/php/5.2/conf.d 目录中。默认情况下会启用这些 PHP 扩展。不过默认不会启用某些自定义的第三方 PHP 扩展。但是可以编辑特定于 PHP 扩展的 INI 文件以进行特定的配置更改。
| 注 此处未提供列表中提及的所有复合软件包扩展。有关可用扩展的信息,请参阅 /etc/php/5.2/conf.d 目录。 |
在 Red Hat Enterprise Linux 和 Solaris 10 OS 中,如果已使用 amp 安装选项安装 Web Stack 软件,则某些 PHP 模块可用作扩展。每个模块都有各自的 INI 文件,它们位于 PHP conf.d 目录中。
例如,Red Hat Enterprise Linux 的 INI 文件可从 /etc/opt/sun/webstack/php/5.2/conf.d 目录中获取。
例如,Solaris 10 OS 的 INI 文件可从 /etc/opt/webstack/php/5.2/conf.d 目录中获取。
启用/禁用捆绑的 PHP 扩展
可启用或禁用 PHP 扩展,方法是注释掉 <扩展>.ini 文件(可从 PHP /etc/php/5.2/conf.d 目录中获取)中的行。
在 OpenSolaris 2009.06 中,PHP conf.d 目录位于 /etc/php/5.2 目录中。
在 Solaris 10 OS 中,PHP conf.d 目录位于 /etc/opt/webstack/php/5.2/ 目录中。
在 Red Hat Enterprise Linux 中,PHP conf.d 目录位于 /etc/opt/sun/webstack/php/5.2/ 目录中。
例如,要启用 Suhosin PHP 扩展,可执行以下任务:
- 在文本编辑器中打开 conf.d/suhosin.ini 文件。
- 取消注释启用 Suhosin 扩展的行
extension=suhosin.so
要禁用扩展,可在此行开头插入注释字符 ; 。
| 注 必须重新启动 Web 服务器以使更改生效。 |
通过 AMP GUI 配置 PHP
不适用于 Red Hat Enterprise Linux 和 Solaris 10 OS。
可按照 Apache Web Server 所支持的方法使用 AMP GUI 修改 PHP 设置。要调用 GUI 工具,可单击“应用程序”>“开发者工具”>“WebStack 管理”>“选项”。
默认情况下不会启用 PHP 调试器。需要选中 PHP 调试器复选框以启用此选项。NetBeans IDE 支持使用 XDebug 调试 PHP 项目。
PHP 应用程序的调试支持
- 从 Solaris 操作系统的“启动”菜单选择“应用程序”>“开发者工具”>“Web Stack 管理”>“选项”。随即显示“选项”屏幕。
- 选择 PHP 选项卡。
- 选中“调试”复选框。选中该复选框即可为所有 PHP 应用程序启用自动调试选项。
- 系统会提示您重新启动服务器。
- 单击“重新启动”以使更改生效。
还可在 xdebug.ini 文件中添加以下行来启用调试:
zend_extension=/usr/php/5.2/modules/xdebug.so xdebug.remote_enable=1 xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_host=localhost
其中:
在 OpenSolaris OS 中, xdebug.ini 文件位于 /etc/php/5.2/conf.d 目录中。
在 Solaris 10 OS 中, xdebug.ini 文件位于 /etc/opt/webstack/php/5.2/ 目录中。
在 Red Hat Enterprise Linux 中, xdebug.ini 文件位于 /etc/opt/sun/webstack/php/5.2/ 目录中。
Python 环境
Python 是面向对象的脚本语言,可通过 Web Stack 软件在所有支持的平台上使用。可使用 {{mod_python}}通过 Apache Web Server 调用 Python 脚本。Python 具有多种可用的 Web 框架,包括在社区中广泛使用的 Django、Pylons、TurboGears 和 Zope。
在 OpenSolaris 2009.06 中,Python 是复合软件包。如果 SUNWpython 尚不可用,可通过 IPS 软件包管理器安装软件包。
| 注 Red Hat Enterprise Linux 的 Web Stack 软件不会提供 Python。需要使用平台提供的 Python 解释器。而且 mod_python 也不是 Web Stack 软件的一部分。 |
可下载 mod_python ,网址是 http://httpd.apache.org/modules/python-download.cgi。
在 Solaris 10 OS 中,可安装 Python,方法是在安装期间提供 python 选项。有关详细信息,请参阅 Web Stack 安装和配置指南。
例如,
$ ./install python
从 Web Stack 软件安装 Python 时,可从下表中提供的位置获取 Python 运行时文件:
| 平台 | 安装位置 |
|---|---|
| Solaris 10 OS | 安装位置 - /opt/webstack/python/. 运行时文件 - /var/opt/webstack/python |
| 注 Python 2.5.2 集成了 DTrace 探测。可使用 Solaris DTrace 功能跟踪基于 Python 的应用程序以处理性能瓶颈和其他问题。 |
Ruby 环境
只有适用于 Solaris 10 OS 和 OpenSolaris OS 的 Web Stack 软件提供 Ruby。在 Red Hat 平台上,Web Stack 软件不包括 Ruby 解释器;此时需要使用 OS 提供的 Ruby 来替代。
在 Solaris 10 OS 中,可安装 Ruby 运行时文件,方法是在安装期间提供 ruby 选项。有关详细信息,请参阅 Web Stack 安装和配置指南
例如,
$ ./install ruby
从 Web Stack 软件安装 Ruby 时,可从下表中提供的位置获取 Ruby 配置和运行时文件:
| 平台 | 安装位置 |
|---|---|
| Solaris 10 OS | 安装位置 - /opt/webstack/ruby/1.8. 运行时文件 - /var/opt/webstack/ruby/1.8 |
在 OpenSolaris 2009.06 中,可执行以下命令下载和安装 Ruby 软件包:
# pkg install ruby-dev
下载和安装 ruby-dev 软件包时,还可安装 Ruby 的 NetBeans 插件。如果没有计划将 NetBeans IDE 用于 Ruby 开发,则可使用以下方法仅获取 ruby 软件包:
# pkg install SUNWruby18
下载和安装之前部分中提及的 Ruby 软件包时,可从 {{/usr/ruby/1.8}}获取二进制文件。
Ruby Gems
Ruby Gems 是用于管理 Ruby 软件二进制文件的系统。以这种方式打包的 Ruby 代码称为 gem。可通过 gem 下载、安装和管理 Ruby 二进制文件。Solaris 中的 Web Stack 软件包没有包含大量打包的 gem,因为可使用 Ruby Gems 下载和安装其他 gem。还可通过 NetBeans 界面管理 gem。
/var/ruby/1.8/gem_home 包括 Ruby gems 系统信息库。 GEM_HOME 是 /var/ruby/1.8/gem_home。 /usr/ruby/1.8/bin 包含 Ruby 可执行文件和其他实用程序。
如果正在运行 gem install 而且无权写入 GEM_HOME 路径,则 gem 会安装至 $HOME/.gem。也可将 GEM_HOME/bin 目录添加至 PATH,从而轻松访问通过 gem 安装的命令(例如 rails 命令)。
在 Solaris 10 OS 中, /var/opt/webstack/ruby/1.8/gem_home 包括 Ruby gems 系统信息库。配置 GEM_HOME 环境变量以使其指向 /var/opt/webstack/ruby/1.8/gem_home ,从而使用此 Ruby gems 安装。 /var/opt/webstack/ruby/1.8/bin 包含 Ruby 可执行文件和其他实用程序。这些程序链接自 /usr/bin。
在 OpenSolaris 2009.11 OS 中,安装 Ruby 本机扩展需要 SUNWgcc 软件包。Gem 预配置为使用 gcc 进行 C 语言扩展。将 CXX 环境变量设置为:
/usr/sfw/bin/g++
安装 C++ 语言扩展(例如 eventmachine 和 thin)时需要执行此操作。
例如:
$ CXX=/usr/sfw/bin/g++ gem install eventmachine
安装 mysql gem 时,必须提供到 MySQL 5.1 客户端库和头文件的路径,例如:
# gem install mysql --with-mysql-include=/usr/mysql/5.1/include --with-mysql-lib=/usr/mysql/5.1/lib
| 注 要使用 gem,务必确保您有权直接访问 Internet。如果您的系统受到防火墙的保护,或者其使用代理服务器,则需要设置 HTTP_PROXY 变量。 |
由 GEM_HOME 引用的目录应该是可写入的。因此需确保执行以下命令:
$ chmod -R a+w <GEM_HOME_PATH>
注意 - 如果 GEM_HOME 指代 $HOME/.gem,则不要执行之前提及的任务。
Ruby on Rails (RoR)
Rails 是完全堆栈框架,用于开发由数据库支持的 Web 应用程序。Rails 提供纯 Ruby 开发环境。Ruby gems 是标准的 Ruby 软件包管理器。如果已成功通过 Web Stack 软件安装 Ruby,则已加载 Ruby gems。因此可执行以下命令安装 Rails 及其相关项:
/usr/bin/gem install rails
也可直接从 NetBeans IDE 安装 rails,而不是通过命令行调用 gem 命令。安装成功后,Ruby on Rails 环境即可用于开发。而且现在可使用 NetBeans IDE 创建 Ruby on Rails 项目。创建项目时,IDE 所创建的文件夹和文件与 rails 命令创建的相同。
Tomcat Servlet 容器
Web Stack 与 Tomcat 6.0 Servlet 容器协同工作,用于部署基于 JSP 和 Servlet 的 Web 应用程序。可安装 Tomcat Server,方法是在安装期间提供 tomcat 选项。有关详细信息,请参阅 Web Stack 安装和配置指南。
- 在 *OpenSolaris 2009.06*中,Tomcat 可从 {{/usr/tomcat6}}获取。
要在 *OpenSolaris 2009.06 OS*中启动 Tomcat Server,可执行以下任务:
- 执行以下命令:
# svcadm enable -s tomcat6
要停止 Tomcat,可执行以下任务:
# svcadm disable tomcat6
- 在 *Solaris 10 OS*中,Tomcat 可从 {{/opt/webstack/tomcat/6.0}}获取。
要在 *Solaris 10 OS*中启动 Tomcat Server,可执行以下任务:
# svcadm enable -s sun-tomcat6
要停止 Tomcat Server,可执行以下任务:
# svcadm disable sun-tomcat6
- 在 *Red Hat Enterprise Linux*中,Tomcat 可从 {{/opt/sun/webstack/tomcat/6.0}}获取。
要在 *Red Hat Enterprise Linux*中启动 Tomcat Server,可执行以下任务:
# /sbin/service sun-tomcat6 start
要停止 Tomcat Server,可执行以下任务:
# /sbin/service sun-tomcat6 stop
在 Red Hat Enterprise Linux 中,需要设置 JAVA_HOME 变量或修改 /opt/sun/webstack/tomcat/6.0/bin/setenv.sh 文件以指向正确的 Java SE 安装路径。
分布式缓存 memcached
memcached 是在流行的 Web 站点中使用最广泛的分布式缓存系统,具有很高的性能。使用 memcached 的主要好处是可降低数据库负载,从而加速动态 Web 应用程序。memcached 用于 LiveJournal、Slashdot、Wikipedia 和其他高流量站点上。
在 OpenSolaris 2009.11 和 Solaris 10 OS 中,以 超级 用户的身份执行以下步骤以启动 memcached:
# svcadm enable -s memcached
执行 disable 命令停止服务器。
svcadm disable memcached
在 Red Hat Enterprise Linux 中,超级用户需要创建文件 /etc/opt/sun/webstack/sysconfig/memcached。而且可修改文件中已经可用的参数的以下默认值:
PORT=11211 USER=memcached MAXCONN=1024 CACHESIZE=64 OPTIONS=""
启动 memcached 服务器
本部分说明如何启动 memcached。
- 作为非超级用户登录。

注
不能以超级用户的身份执行 memcached 。 - 启动 memcached 服务器。
在 OpenSolaris 2009.06 中,可执行以下命令启动 memcached 服务器:
# svcadm enable -s memcached
在 Solaris 10 OS 中,可执行以下命令启动 memcached 服务器:
# svcadm enable -s sun-memcached
如果需要将某些选项传送到 memcached,那么可按照以下方法使用 setprop 选项:
在 Solaris 10 OS 中执行以下命令:
# svccfg -s sun-memcached setprop memcached/options=("-u" "nobody" "-m" "512") # svcadm refresh sun-memcached # svcadm enable -s sun-memcached
在 OpenSolaris 2009.06 中执行以下命令:
# svccfg -s memcached setprop memcached/options=("-u" "nobody" "-m" "512") # svcadm refresh memcached # svcadm enable -s memcached
之前提及的命令以用户 nobody 的身份启动服务器,并且获得 512 MB 的内存。
有关 memcached 命令及其选项的信息,请参阅 memcached 手册页。
在 Red Hat Enterprise Linux 中,可执行以下命令启动 memcached 服务器:
# /sbin/service sun-memcached start
在 Solaris 区域中使用 memcached
请阅读本文档 。
不适用于 Red Hat Enterprise Linux。
自动启动服务器
在 OpenSolaris 2009.06 中,如果已通过 Web Stack 菜单启动服务器,那么这些服务器会在重新启动机器时自动启动。
在 Solaris 10 OS 中,如果启用 sun-apache22 服务,则会在机器重新启动时自动启动 Apache Web Server。
在 Red Hat Enterprise Linux 中,启动脚本 sun-apache22 位于 /etc/init.d。要在机器启动时自动启动服务,可使用 chkconfig 机制。
要在机器启动时在 Red Hat Enterprise Linux 中启动 Apache Web Server,可执行以下命令:
# /sbin/chkconfig sun-apache22 on
要在机器启动时在 Red Hat Enterprise Linux 中启动 MySQL 数据库,可执行以下命令:
# /sbin/chkconfig sun-mysql51 on
要在机器启动时在 Red Hat Enterprise Linux 中启动 MySQL 数据库,可执行以下命令:
# /sbin/chkconfig sun-mysql51 on
| 注 chkconfig 命令仅确保在 Red Hat Enterprise Linux 中启用开机时启动功能。然而,要启动/停止 Apache Web Server 或 MySQL Server,必须使用 Red Hat Enterprise Linux 中的 service 命令。 |
例如,
# /sbin/service sun-apache22 start
将 NetBeans IDE 用作开发环境
本部分说明如何通过 Web Stack 组件(可通过 Web Stack 软件获取)使用 NetBeans IDE 来构建 Web 应用程序。首先枚举开发端到端企业级 Web 应用程序的过程中涉及的阶段。要将 IDE 用于开发,需要满足以下要求:
- 服务器支持 - IDE 应该支持通过直观的、易于使用的界面管理服务器生命周期。
- 语言支持 - IDE 应该支持使用最终会用于构建 Web 应用程序的编程语言或 Web 应用程序框架。
- 数据库支持 - IDE 应该很好地集成开发、测试和生产数据库。
通常情况下,开发环境应该保证将构建 Web 应用程序的工作量降至最低,而且应通过属性编辑器、向导和窗口小部件更广泛地支持堆栈级配置。服务器支持、语言支持和数据库支持是所有 IDE 可为 Web 开发提供的三个主要方面。
NetBeans IDE 通过简练的界面关注所有三个方面,从而简化了 Web 开发。可通过 PHP 或使用 Rails 框架构建 Web 应用程序,以及在 NetBeans IDE 中使用 MySQL 或 PostgreSQL 等数据库。
| 注 如果正在使用 NetBeans IDE,则可通过以下步骤将 Web Stack 组件与 NetBeans IDE 配合使用。例如,可使用 NetBeans IDE 的 添加服务器 选项添加通过 Web Stack 软件提供的 Apache Tomcat Server 6.0。 |
可将 NetBeans IDE 用于 Java/PHP/Ruby 开发。NetBeans IDE 支持集成的配置窗口,用于直接从 IDE 管理 Web 服务器和数据库。请注意,官方软件包系统信息库中提供的 NetBeans 版本可能比 NetBeans Web 站点提供的版本旧。以下部分显示如何配置 NetBeans IDE 6.5.1 以满足开发需求。
NetBeans IDE 支持各种用于应用程序部署的 Java EE 服务器和其他 Web 服务器。可在 NetBeans 中配置多个服务器,而不必考虑这些服务器是否会用在项目中。因此可配置 Apache 2 Web Server 用于部署 PHP 文件、配置 Apache Tomcat 容器用于部署基于 Java 的 Web 应用程序,或配置 WEBrick Server 用于部署 Rails 应用程序。
NetBeans IDE 和 Web Stack 软件入门
不适用于 Red Hat Enterprise Linux 和 Solaris 10 OS。
从开发环境迁移到生产环境
不推荐在未自定义和调整性能、可伸缩性和安全性的情况下运行关键任务 Web 站点。在此环境中开发和调试工作应用程序时,建议将数据库数据和 PHP 文件转移至产品质量 OpenSolaris 安装,此安装运行在可用性较高的 Sun 硬件上,而且该硬件经过仔细调整,可满足关键任务需求。
OpenSolaris 2009.06 OS 中的 Web Stack 组件的文件布局
请阅读本文档 ]]]]。
部署通用开源应用程序
请阅读本文档 。
针对 Web Stack 的 DTrace 支持
不适用于 Red Hat Enterprise Linux。
请阅读本文档 。
Web Stack 故障排除
请阅读本文档 。
Comments (1)
Aug 20
g11nautomation says:
l=zh-CN||page_id=163283118||src_p_id=42075438||src_id=48125322||src_space=WebSta...l=zh-CN||page_id=163283118||src_p_id=42075438||src_id=48125322||src_space=WebStack