2017-07-28 13 views
0

enter image description hereディスパッチャにまだキャッシュされていないページにアクセスしようとすると、画面全体にhtmlが表示され、ページとしてレンダリングされません。 添付画像最初のロード時のDOMセクションの表示方法を示します。AEMディスパッチャが最初のヒット時にhtmlページをロードしない

その後のリクエストでは、すべてのページとすべてのhtml、css、images、jsが正しく読み込まれます。

ここには設定がありません。

+0

は、すべてのヘッダーを通過するあなたのディスパッチャですか?ページがHTMLではなくテキストとして返されるようです。サイト運営者がページを表示する場合、サイト運営者とディスパッチャの間のヘッダーを適切に比較し、doctypeやその他の関連ヘッダーを渡します。 –

答えて

1

HTMLページが正しく表示されるようにヘッダーを渡すようにディスパッチャを設定する必要があります。ヘッダーが間違っていると、一部のブラウザーでHTMLが正しく解析されません。

これは、/clientheadersセクションにパススルーヘッダーを指定することで実行できます。設定例は次のようになります。

/clientheaders 
{ 
    "referer" 
    "user-agent" 
    "authorization" 
    "from" 
    "content-type" 
    "content-length" 
    "accept-charset" 
    "accept-encoding" 
    "accept-language" 
    "accept" 
    "host" 
    "cookie" 
} 

詳細はhttps://docs.adobe.com/docs/en/dispatcher/disp-config.htmlを参照してください。

ApacheウェブサーバーのModMimeUsePathInfoも、here以上の記述子として設定する必要があります。

Dispatcherはキャッシュする文書を正しく識別するためにApacheモジュールmod_mimeに依存します。これは、Dispatcherモジュールが正しく機能するために、httpdサーバーで必要とされる最小構成の1つです。 mod_mimeによりを有効にする

簡単な構成は以下のようになります:

<Directory /> 
    <IfModule disp_apache2.c> 
     SetHandler dispatcher-handler 
     ModMimeUsePathInfo On 
    </IfModule> 
</Directory> 
+0

現在のように、すべてのヘッダを許可しているとDOCTYPEもあなたの問題のために、「<!DOCTYPE HTML>」 /clientheaders { 「*」 } – Nitin

+0

更新答えをHTMLに設定されています。 –

関連する問題