【问题标题】:Specifying domain in zend view url-helper在 zend 视图 url-helper 中指定域
【发布时间】:2012-10-29 12:04:24
【问题描述】:

我的应用程序有两个模块产品模块和博客模块。两个模块都使用相同的数据库。有两个域:第一个指向产品模块 (www.mainsite.com),第二个指向博客模块 (www.blog.mainsite.com)。将有多个链接从产品模块和博客模块连接。

问题是我正在使用zend url view helper。但我无法为该视图助手指定域。当我调用视图助手时,它总是返回我当前的域。我检查了 zend 框架手册,但什么也没找到。

zend 中是否还有其他选项可以实现相同的功能?

【问题讨论】:

  • 你不能在 htaccess 中配置

标签: php zend-framework redirect


【解决方案1】:

如果是完全限定的 URI,您应该选择:

$this->_redirect('http://www.blog.mainsite.com/some/thing');

当您在视图中调用 url 帮助程序时,它实际上调用了路由汇编程序。所以我假设你应该为每个域定义两条路由并使用类似的视图助手:

echo $this->url (array ('action' => 'some', 'controller' => 'thing'), 'routeName');

【讨论】:

  • 我不想重定向请求,我需要将 url 显示为 href 中的链接
【解决方案2】:

【讨论】:

    【解决方案3】:

    使用 ServerUrl 视图助手,以及用于继承当前 URL 方案的“//”符号:

    echo '//' . $this->serverUrl() . $this->url(/* ... */);
    

    【讨论】:

    • 我之前已经尝试过了,但是$this->url() 已经返回了带有域的url,所以当我附加$this->serverUrl() 它实际上会加倍..
    • 您能提供一个代码示例来说明这一点吗?默认情况下,url() 助手不应该这样做——我希望看到域翻倍的唯一原因是如果你忘记了架构或“//”前缀。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-17
    • 2019-02-23
    • 2013-04-04
    相关资源
    最近更新 更多