2

header("Location: ");ヘッダーは相対パスではなく絶対パスで使用する必要があるため、$_SERVER変数を使用して絶対パスを取得するこの関数を作成しました。

function getAbsolutePath($relativePath = "/site/123/") {
if (isset($_SERVER['HTTPS'])) {
    $protocol = 'https'; 
} else {
    $protocol = 'http';
}

$host = $_SERVER['HTTP_HOST'];

$port = $_SERVER['SERVER_PORT'];

$absolutePath = 'Location: ' . $protocol . "://" . $host  . ":" . $port . $relativepath;
return $absolutePath;
}

これはそうするのに最適な方法ですか、それともより良い代替手段はありますか?

4

3 に答える 3

0

Location ヘッダー フィールドの絶対パスは問題ありません。完全な URI にする必要はありません。http://trac.tools.ietf.org/wg/httpbis/trac/ticket/185およびhttp://greenbytes.de/tech/webdav/draft-ietf-httpbis-p2-semantics-21.html#headerを参照してください。 。位置

于 2012-10-11T15:07:58.260 に答える
0

この方法は大丈夫だと思います。他の方法でこれを行うことはできないと思います。

于 2012-10-11T14:18:37.910 に答える