4

liferay で静的コンテンツを提供するにはどうすればよいですか? 私は、htmls、css などのディレクトリ構造を持っており、それをアドレスなどで提供したいと考えていますhttp://localhost:8080/myStaticContent/index.html

apache のようなフロントエンド http サーバーを使用したくありません。

4

3 に答える 3

4

静的コンテンツのみを含む .war をデプロイすることでそれを行いました。パスは liferay url/war_name です。

したがって、次のようなファイルとの戦争がある場合:

myproj.war
+-- myDir
     +-- myFile.html

URLは次のようになりますhttp://localhost:8080/myproj/myDir/myFile.html

于 2009-09-12T22:11:15.203 に答える
1

この場合、Liferay は JBoss または Tomcat を使用していると思います。これを試して:

  • server.xml を見つけて <Context> 要素を追加します。それが jBoss の場合、server.xml は次の場所にあります。

[jboss-home]/server/[config-name]/deploy/jboss-web.deployer/server.xml

<Context path="/myStaticContent" 
    docBase="/absolute/path/to/static/content" debug="0" reloadable="true"/>

次のように「Host」要素内に入ります。

<Host name="localhost" .....> <!-- add it here --> </Host>
  • docBase に記載されている場所 (「/absolute/path/to/static/content」) に WEB-INF フォルダーを追加し、その中に最低限の web.xml を配置します。
于 2009-08-13T11:26:55.100 に答える
0

編集:これに答えるときにあなたの質問を読み違えたと思います-他の誰かがこの質問を見つけて、あなたのものとは異なる静的コンテンツの要件がある場合に備えて、ここに答えを残します。Peter と Miguel は、あなたの特定の質問により適した回答を提供します)


簡単な方法は、liferays cdn 機能(cdn="Content Delivery Network") を活用することです。残念ながら、ドキュメントをざっとスキャンしたところ、この構成オプションしか見つかりませんでしたが、どのコンテンツが「静的」と見なされるかについての情報を見逃していました。情報がないわけではありません - 見つけられなかっただけです。

私は、cdn が別のホスト名を暗示しているとしても、同じホスト名と別の Web アプリケーション コンテキスト パス (サーバー上のパスなど) を使用できる可能性があると思います。liferay を提供するサーバー内に、任意の数の独立したアプリケーションをデプロイできます。

特に、静的コンテンツを別のホスト/アプリケーションに選び出したい場合は、専用サーバー (または少なくとも dns 名) または apache/tomcat の組み合わせを使用する方がよい場合があります。apache は静的コンテンツをより少ないリソースで提供すると報告されているためです。 tomcatよりも。

于 2009-09-10T09:17:09.790 に答える