web-dev-qa-db-ja.com

ApacheRewriteサブディレクトリを持つZenoss

https:// server ではなく https:// server/zenoss で動作するようにZenossを設定しようとしています。これが私の書き換えルールです:

RewriteEngine On
RewriteRule ^/zenoss($|/.*) http://localhost:8080/VirtualHostBase/https/server:443/VirtualHostRoot/zenoss$1 [L,P]

この方法は機能しません。私は得る:

サイトエラー

このリソースの公開中にエラーが発生しました。要求されたリソースは存在しません。 Zenossダッシュボードに戻るには、ここをクリックしてください

「Zenossダッシュボードに戻るには、ここをクリックしてください」のURLは https:// server/zport/dmd を指しています。

ただし、標準のZenoss/Plone/Zopeの方法で実行すると機能します。

RewriteEngine On
RewriteRule ^/(.*) http://localhost:8080/VirtualHostBase/https/server:443/VirtualHostRoot/$1 [L,P]

...それは素晴らしい働きをします。

この記事 によると、最初の方法が機能するようです。何が欠けているのかよくわかりません。

1
churnd

最初のRewriteRuleに余分なzenossがあります(また、スラッシュも2倍になります)。それは読む:

RewriteRule ^/zenoss($|/.*) http://localhost:8080/VirtualHostBase/https/server:443/VirtualHostRoot/zenoss$1 [L,P]

そのはず:

RewriteRule ^/zenoss($|/.*) http://localhost:8080/VirtualHostBase/https/server:443/VirtualHostRoot$1 [L,P]
1
BMDan