1

私は ajax ファイルアップロードシステムを稼働させています。

私がやろうとしているのは、ファイルを Apache の webroot の下のディレクトリに保存することです。アプリは tomcat で実行されており、ファイルを webroot の外 (tomcat 内) と Apache の webroot のどこかに保存することをお勧めします。私たちは定期的にアプリを更新します。

私はこれを持っています:

var root = new java.io.File("").getAbsolutePath()

アプリの場所を教えてくれます。

これをアプリの config.xml に追加する必要は本当にありません。そのため、Apache の webroot が変更された場合やサーバーを交換した場合に、その場所を見つける方法を誰かが知っているかどうか疑問に思っていました。違う?

うわー、「webroot」とたくさん入力しました..

助けてくれてありがとう、どうもありがとう:)

4

1 に答える 1

1

特に仮想ホストを扱う必要がある場合、現在のApacheの場所を見つけるのは難しい仕事です。おそらく、そのためにプロパティファイルを使用する必要があります。環境ごとに 1 つずつ、複数のProps ファイルを持つことができます。

Lift にはプロパティー・ファイルをロードする方法がたくさんあります。それを使用して解決策を見つけることを強くお勧めします。たとえば、Lift で構成ファイルを探す場所をオーバーライドすることもできます。

または、次のように、jetty 起動スクリプトで変数として設定された apache ホームを使用できます。

JAVA_OPTIONS="$JAVA_OPTIONS -Dapache.home=/etc/httpd"

そして、それをコードで使用します。

val apacheHome = System.getProperty("apache.home")

そのようなプロパティが存在しない場合、System.getProperty は null を返すことに注意してください。Optionを使用して、チェックをより慣用的にしたい場合があります。

val apacheHome = Option(System.getProperty("apache.home"))
// apacheHome: Option[java.lang.String] = ...
于 2012-07-07T04:14:18.973 に答える