可从以下位置访问本示例:
portal-server-URL /rewriter/JavaScript/variables/dhtml/dhtml.html
确保在网关服务的“域和子域的代理”列表中定义了 abc.sesta.com。如果没有定义该项,则假定采用直接连接,不会在其前面加网关 URL。
将本示例中指定的规则(如果尚不存在)添加到“JavaScript 源重写规则”一节的 default_gateway_ruleset 中。在 Portal Server 管理控制台中,编辑 Portal Server 配置下的重写器服务中的 default_gateway_ruleset。
如果添加了此规则,请重新启动网关:
./psadmin start-sra-instance –u amadmin – f <password file> –N <profile name>– t <gateway> |
<html> <head> <title>JavaScript DHTML Variable Test Page</title> </head> <body> <script LANGUAGE="Javascript"> <!-- //DHTML Var var dhtmlVar="<a href=../../images/test.html>" var dhtmlVar="<a href=/../images/test.html>" var dhtmlVar="<a href=/images/test.html>" var dhtmlVar="<a href=images/test.html>" var dhtmlVar="<a href=http://abc.sesta.com/images/test.html>" var dhtmlVar="<img src=http://abc.sesta.com/images/test.html>" //--> </SCRIPT> <br><br> Testing DHTML Variables <br><br> <img src="images/logo.gif">IMAGE </body> </html>
<Variable name="DHTML">dhtmlVar</Variable>
<html> <head> <title>JavaScript DHTML Variable Test Page</title> </head> <body> <script LANGUAGE="Javascript"> <!-- //DHTML Var var dhtmlVar="<a href=gateway-URL/portal-server-URL /rewriter/JavaScript/images/test.html>"
// JavaScript DHTML 规则将 dhtmlVar 的右侧部分确定为动态 HTML 内容。因而,会应用 default_gateway_ruleset 文件中的 HTML 规则。动态 HTML 包含 href 属性。default_gateway_ruleset 定义了规则 <Attribute name="href"/>。因此,会重写 href 属性的值。但此 URL 不是绝对的;因此,会用页的基 URL 以及所需子目录来替换这个相对的 URL。接着在其前面加上网关 URL 以得出最终重写后的输出。
var dhtmlVar="<a href=gateway-URL /portal-server-URL/../images/test.html>"
// 虽然附加了页的基 URL,并且在前面加上了网关 URL,但最终得到的 URL 不会起作用。这是因为初始 URL /../images/test.html 是错误的。
var dhtmlVar="<a href=gateway-URL /portal-server-URL/images/test.html>"
// 这里,JavaScript DHTML 规则同样将右侧部分确定为动态 HTML 内容,并将其传递给 HTML 规则。应用 default_gateway_ruleset 中的 HTML 规则 <Attribute name="href"/>,并按所示方式重写该语句。在其前面加上网关 URL 和 Portal Server URL。
var dhtmlVar="<a href=gateway URL/portal-server-URL/ rewriter/JavaScript/variables/dhtml/images/test.html>" var dhtmlVar="<a href=gateway URL/http://abc.sesta.com/images/test.html>" var dhtmlVar="<img src=gateway-URL/ http://abc.sesta.com/images/test.html>"
// JavaScript DHTML 规则会确定出右侧的动态 HTML 内容,并将此语句传递给 HTML 规则。此时会应用 default_gateway_ruleset 中的 <Attribute name="src"/> 规则。由于此 URL 是绝对的,因此只需在其前面加上网关 URL。为重写该 URL,请确保在“域和子域的代理”列表中定义了 abc.sesta.com。
//--> </SCRIPT> <br><br> Testing DHTML Variables <br><br> <img src="gateway-URL/portal-server-URL/ rewriter/JavaScript/variables/dhtml/images/logo.gif">
// 由于在 default_gateway_ruleset 中定义了规则 <Attribute name="src"/>,所以会重写该行。
<br><br> Image </body> </html>