【问题标题】:Redirect with Mason 1.0使用 Mason 1.0 重定向
【发布时间】:2010-08-30 09:53:45
【问题描述】:

我正在使用 Mason 1.0 并希望将页面重定向到另一个 URL。

有什么方法可以重定向吗?

或者...

我在dbhandler 中编写了以下代码,它给出了错误,指出$r 未定义。你能帮忙吗?

$r->method('GET');
$r->headers_in->unset('Content-length');
$r->content_type('text/html');
$r->header_out('Location' => $newPageURL);
$m->abort(301);

我不能使用$m->redirect,因为它对我不可用。

我指的是“如何进行外部重定向?”部分中的此链接 http://www.masonhq.com/htmlmason/wiki/FAQ:HTTPAndHTML

【问题讨论】:

  • 你没有显示足够的代码让我能够回答。写一个简短、完整的例子来展示你的问题。请参阅 esr 的“智能问题”文章的 this section
  • 特别是,您为什么希望定义$r?是你自己定义的,还是你做了什么让 Mason 来定义它?
  • 我自己没有定义它,我也没有强制使用它。我只是在寻找 mason1.1x 版本中可用的 $m->redirect() 方法的替代方法
  • 我是 mason 的新手,正如我所说,我只是指其中一个网站 masonhq.com/…。我是否应该按照我的理解定义 $r ,使用 Apache2:subrequest 将使它在我的组件中对我可用。
  • 你为什么要使用近 10 年前的软件?

标签: perl redirect mason


【解决方案1】:
$r->status(302);
$r->headers_out()->add("Location", "http://google.com");
return 302;

【讨论】:

    【解决方案2】:

    在您第一次致电之前,$m->clear_buffer 似乎丢失了。

    这是必需的,因此它会在您到达重定向之前清除任何生成的响应。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-12
      • 2011-12-16
      • 1970-01-01
      • 1970-01-01
      • 2012-06-14
      • 2011-09-16
      • 2013-02-23
      相关资源
      最近更新 更多