0

我们的 Portal 在 Oracle Webcenter 11.1.1.8 上运行,我们的 WLS 前面是 OHS。如我们所见,我们门户页面的 URL 形成为http://host:port/webcenter/portal/My-Custom-Portal/Home ?。根据客户的要求,我们不应该在我们的 URL 中显示“webcenter/portal”以及 adf 参数。我们想要的是 URL 应该像http://My-Custom-Portal/home一样干净,就是这样。

现在,我们被困在如何隐藏“webcenter/portal”的 URL 重写部分。我尝试在 /config 文件夹中编辑 httpd.conf 文件,方法是在 mod_rewrite.so 的加载模块命令结束的位置之后添加以下规则。添加下面的代码行作为测试,看看这是否有效。

重写规则上的重写引擎。* http://www.google.com

但遗憾的是,这根本没有帮助。这里向代理主机和带有 webcenter 的端口发出的所有请求都像以前一样工作。

另请阅读 .htaccess 文件,该文件将包含重写规则并应保存在根目录下。但是我们将我们的代码作为战争部署到 Weblogic,所以如果需要的话,应该将 .htaccess 文件保存在哪里。

我在这里错过了什么/做错了什么。

亲切的问候,

席德

编辑:正如乔纳森建议的那样,在 httpd.conf 文件中添加了以下更改

虚拟主机入口:

NameVirtualHost *:7743
<VirtualHost *:7743>
ServerName 10.10.10.10
ServerAlias abc.abc.com
RewriteEngine On
RewriteOptions inherit
RewriteRule ^/mylife$ /webcenter/portal [P]
RewriteLog /tmp/rewrite.log
<Location /webcenter>
  SetHandler weblogic-handler
  WebLogicHost 10.10.10.10
  WebLogicPort 8888
</Location>
</VirtualHost>

将 URL 设为http://10.10.10.10:7743/mylife后, 我们得到的 URL 为

http://10.10.10.10:7743/mylife;jsessionid=cMDQVLyJ1QH2GqXQgNgs9PPmTmcLLqw7Lt5ctT1dgLBsvDVcBh11!-2127183939?_afrLoop=1892903079007447

在地址栏中

窗口中的消息为

The requested URL /mylife;jsessionid=cMDQVLyJ1QH2GqXQgNgs9PPmTmcLLqw7Lt5ctT1dgLBsvDVcBh11!-2127183939 was not found.

是否需要更多配置?

4

2 回答 2

0

您正在寻找的功能通常称为漂亮的 URL。有几种不同的方法可以实现这一目标。

它们通常包括隐藏 ADF 参数以及代理/重写 URL 的某种组合。

以下是其他一些链接:

此外,我不建议使用 Google 作为代理/重写的示例。使用技术含量较低的网站。谷歌做了一些事情来阻止用户代理。

于 2015-03-13T15:47:40.547 回答
0

尝试[R]而不是[p]在最后。

于 2016-04-04T20:16:32.643 回答