私の見解では、完全な URL を描画する必要があります。このような:
http://hostename.com/default/url
使用しようとする$this->url('default', array(1,2,3))
と、 しか得られません/index/get/
。ホスト名を取得する Zend メソッドはありますか、$_SERVER['HTTP_HOST']
代わりに使用する必要がありますか?
私の見解では、完全な URL を描画する必要があります。このような:
http://hostename.com/default/url
使用しようとする$this->url('default', array(1,2,3))
と、 しか得られません/index/get/
。ホスト名を取得する Zend メソッドはありますか、$_SERVER['HTTP_HOST']
代わりに使用する必要がありますか?
force_canonical
ルーターのオプションを使用できます。すべてのルーター オプションは、url ヘルパーの 3 番目のパラメーターに入ります。
url($route, $params, $options)
したがって、次のようなことができます。
$this->url('myroute', array('id' => 123), array('force_canonical' => true))
Zend ビューで完全な URL を作成するための Zend\View\Helper\ServerUrl があります。ビュー テンプレートで以下のコードを試してください。
<?php echo $this->serverUrl()?>
ベース URL をグローバルに設定する場合は、onBootstrap メソッドを使用して実行できます。
$e->getApplication()->getMvcEvent()->getRouter()->setBaseUrl($baseUrl);
この場合、ナビゲーション ヘルパーもそれを使用します。
現在のベース URL を取得するには、このスレッドで説明されているように ServerUrl ヘルパーを使用します。
$serverUrl = $e->getApplication()->getServiceManager()->get('ViewHelperManager')->get('ServerUrl');
$baseUrl = $serverUrl->__invoke();