0

カスタムメッセージ表示器のように機能するphpファイルがあります。GET でいくつかの変数を渡すと、それに基づいてメッセージが表示されます。また、404 エラー ページとしても機能します。問題は; 移植性のために非常に望ましい相対ErrorDocument参照がありますが、そのファイルにリダイレクトした後は機能しないようです。

ファイルの場所:/a/b/c/custom_message_displayer.php

が次のように設定されている場合httpd.conf:

ErrorDocument 404 /a/b/c/custom_message_displayer.php?e=404

エラーはサブディレクトリから発生します。/a/blah、この場合はアクティブディレクトリであり、リダイレクト先では/a/なく、ファイル内でミスリンクが発生します(相対css、js、include()パス)。/a/b/c/ErrorDocument

追加のファイルを使用する回避策を作成しました。しかし、私はこれについて心配しており、これを行うより簡単な方法があるのではないかと考えています. おそらく、httpd.configActive Directory も変更する ベースのリダイレクトですか?

回避策:

ErrorDocument 404 /additional_file.php→ このファイルは以下を使用してリダイレクトします: header('Location: /a/b/c/custom_message_displayer.php')GET クエリも保持/転送します。

ファイルはそのディレクトリで実行され、すべての相対リンクが機能します。

上記を行う簡単な方法はありますか?少しでもアドバイスをありがとう。

4

0 に答える 0