支持 Java servlet 规范 2.3 版的 Web 服务器支持 Servlet 重定向器。以下过程给出了如何为 Apache Tomcat 4.0.6 设置 Servlet 重定向器的一个示例。
还有一个适用于 Apache Web 服务器的本机重定向器。有关详细信息,请参见 Apache 重定向器。
本节介绍如何安装重定向器的 servlet 版本以在 Apache Web 服务器上与 Tomcat servlet 容器配合使用。重定向器软件的测试已通过使用 Tomcat version 4.0.6 和 Apache 2.0.47 完成。
安装需要以下步骤:
完成配置重定向器属性(所有版本)中的步骤。
在 Tomcat 中安装重定向器的 servlet 版本。
配置 Apache Web 服务器,以使其作为代理运行。
本节分别使用 %CATALINA_HOME% 和 %APACHE_HOME% 作为 Tomcat 和 Apache 的安装目录。
在 Tomcat 中安装 servlet 重定向器
将 Tomcat 作为独立服务器安装。
您可以从以下位置的 Apache Web 站点上的 Jakarta 项目下载 Tomcat 二进制文件
http://archive.apache.org/dist/jakarta/tomcat-4/archive/v4.0.6/bin/。
或者,设置所需的 Tomcat HTTP 端口。
Tomcat 缺省绑定到端口 8080。如果存在冲突,原因可能是其它 Web 服务器正在使用此端口,
打开文件:%CATALINA_HOME%/conf/server.xml
搜索 8080(位于 <Connector> 标记内)
将其更改为一个空闲端口
将 Servlet 重定向器作为一个 Web 应用程序进行安装。
将 iaredirect.war 文件复制到 %CATALINA_HOME%/webapps。
关闭并重新启动 Tomcat。
Tomcat 将展开该 war 文件,并为重定向器 Web 应用程序创建 iaredirect 目录。
编辑文件 %CATALINA_HOME%/webapps/iaredirect/WEB-INF/web.xml。搜索 redirector.config(在 <init-param> 标记内),并更正 redirector.config 文件的路径。
将项目 redirector.config 更改为 drive:/path/redirector.config。即使在 Windows 操作系统上,也应使用正斜线作为路径分隔符,例如 d:/redirector.config。
关闭 Tomcat 并重新启动,以便更改生效。
更改生效后,部署的位置不再需要 war 文件。
现在,重定向器可以通过以下 URL 来调用:
http://tc-host:tc-port/iaredirect/ml/
其中,tc-host 是计算机,tc-port 是 Tomcat 监听的端口。
将 Apache Web 服务器配置为代理
安装 Apache Web 服务器。
您可以从以下位置的 Apache Web 站点下载二进制文件
http://www.apache.org。
或者,更改 Apache Web 服务器端口。
编辑文件 %APACHE_HOME%/conf/httpd.conf 并将 Port 设置更改为所需的端口。
配置 Apache 以作为代理运行。
在 %APACHE_HOME%/conf/httpd.conf 中,添加以下两条指令:
LoadModule proxy_module {module-path}/mod_proxy.so
LoadModule proxy_connect_module {module-path}/mod_proxy_connect.so
LoadModule proxy_http_module {module-path}/mod_proxy_http.so例如,路径可以是 modules/mod_proxy.so(缺省值)。
配置 Apache 以将重定向器 URL 转发给 Tomcat。
在 %APACHE_HOME%/conf/httpd.conf 中,添加以下两条指令,以便 Apache 将 http://localhost/iaredirect/* 格式的 URL 转发给在端口 8080 上监听的 Tomcat 4 Connector:
ProxyPass /iaredirect http://localhost:8080/iaredirect
端口号必须与 Tomcat 所用的端口号匹配。如果 Tomcat 和 Apache 未在同一计算机上运行,请提供 Tomcat 所在的计算机名以代替 localhost。
如果使用的是 HTTPS 以外的任何网络协议,则您的配置已完成。
如果您使用的是 HTTPS 同步,请按以下方式配置服务器。(注意,此 HTTPS 配置与适用于 Apache 和 M-Business Anywhere 的本机重定向器的 HTTPS 说明相同。)
下载并安装 mod_ssl 和 OpenSSL 的二进制文件。您可以到以下网址使用 Apache 模块注册表找到它们:
http://modules.apache.org/。必须将 mod_ssl.so 复制到 %APACHE_HOME%\modules 中。必须将 libeay32.dll 和 ssleay32.dll 复制到 %APACHE_HOME%\bin 中。
生成服务器证书和专用密钥,方法是使用 reqtool.exe 生成请求并将其发送到第三方认证机构进行签名或使用 gencert.exe 直接生成证书。专用密钥可以与服务器证书在同一个文件中,也可以自用一个文件。
将以下行添加到 %APACHE_HOME%\conf\httpd.conf 中:
LoadModule ssl_module modules/mod_ssl.so SSLEngine on SSLCertificateFile certificate_file
其中 certificate_file 是服务器证书文件的路径和文件名。
如果服务器的专用密钥与服务器证书不在同一个文件中,请另外添加以下行
SSLCertificateKeyFile private_key_file
其中 private_key_file 是服务器专用密钥的路径和文件名。
如果使用通行码对专用密钥进行加密并且您当前在 win32 下运行,请另外添加以下行
SSLPassPhraseDialog exec:exe_name
其中 exe_name 是将在 stdout 上返回通行码的可执行文件的路径和文件名。
或者,也可以使用 openssl 从专用密钥上删除通行码:
openssl rsa -in src_file -out dst_file
其中 src_file 是通行码保护的专用密钥的路径和文件名,dst_file 是将包含未受保护的专用密钥的输出文件的路径和文件名。请注意,这可能会降低服务器安全性。
有关使用 HTTPS 的详细信息,请参见 MobiLink 传输层安全性。
以下是将 Apache 配置为使用 HTTPS 的一个示例。此示例使用 Apache 的虚拟主机功能,从端口 443(缺省 HTTPS 端口)读取 HTTPS,同时从端口 80 读取 HTTP。
LoadModule ssl_module modules/mod_ssl.so
Listen 80
Listen 443
NameVirtualHost *:443
<VirtualHost _default_:443>
ServerName server_name:443
ErrorLog logs/https_error
CustomLog logs/https_access common
SSLEngine on
SSLCertificateFile rsaserver.crt
SSLCertificateKeyFile rsaserver.key
</VirtualHost>检查配置
使用以下语法调用重定向器:
http://host:port/iaredirect/ml/
检查日志文件看重定向器是否记录了请求。
注意:此测试不建立到 MobiLink 同步服务器的连接。
SQL Anywhere Studio 9.0.2
版权所有 © 1989–2005 Sybase, Inc. 部分版权所有 © 2001–2005 iAnywhere Solutions, Inc. 保留所有权利。