0

ローカルホストで ZF + xampp を実行しています (これは初めてです)。

私はこのコードを持っています:

    $url = $this->getRequest()->getRequestUri();
    ...
    $session->requestURL = $url;

& var_dump は $url= を示します

    /kakool/public/admin/catalog/item/update/1

しかし、後で、このコードで:

    if (isset($session->requestURL)) {
    $url = $session->requestURL; }
    # again, var_dump shows $url=/kakool/public/admin/catalog/item/update/1
    $this->_redirect($url);  

次の URL にリダイレクトしています。

    /kakool/public/kakool/public/admin/catalog/item/update/1

迷惑です...誰かアイデアはありますか?

4

2 に答える 2

3

この_redirectメソッドはデフォルトで、現在のアプリのルートからの相対パスを指定していると仮定します。そのため、 で始まる URL を渡しても、/その前にベース パスが追加されます。

次の 2 つのオプションがあります。

1/ 必要に応じて、プロジェクトへの相対パスを指定します。

$url = $this->getRequest()->getPathInfo();
# var_dump now shows $url=/admin/catalog/item/update/1
$this->_redirect($url);

2/ _redirect に基本パスを追加しないように指示する追加のフラグを渡します。

$this->_redirect($url, array('prependBase' => false));
于 2013-06-17T02:51:18.230 に答える