here で説明されているように、 Bootstrap.php内でグローバル レイアウトのプレースホルダーを初期化します。
public function _initPlaceholders()
{
$this->bootstrap('View');
$view = $this->getResource('View');
$view->doctype('XHTML11');
$view->headTitle('Foo Bar Title')
->setSeparator(' :: ');
$view->headMeta()->appendHttpEquiv(
'content-type',
'application/xhtml+xml; charset=UTF-8'
);
$view->headMeta()->appendName('robots', 'index,follow');
$view->headLink()->appendStylesheet('/styles/styles.css', 'screen')
->appendStylesheet('/styles/print.css', 'print');
}
レンダリングされた HTML は正しく表示されます。
<title>Foo Bar Title</title>
<link href="/styles/styles.css" media="screen" rel="stylesheet" type="text/css" />
<link href="/styles/print.css" media="print" rel="stylesheet" type="text/css" />
<meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
<meta name="robots" content="index,follow" />
しかし、Zend_Controller は CSS をコントローラーか何かだと認識しているため、CSS は正しく読み込まれません。CSS ファイルを開こうとすると、次のエラーが発生します。
致命的なエラー: キャッチされない例外 'Zend_Controller_Dispatcher_Exception' とメッセージ '無効なコントローラーが指定されました (エラー)'
ヒントはありますか?
[アップデート]
OK、次の行を .htaccess ファイルに追加しただけで、すべてが期待どおりに機能するようになりました...
RewriteRule !.(js|ico|txt|gif|jpg|png|css|htc|swf|htm)$ index.php