3

Apacheのサイトファイルを直接変更してeXistXMLデータベースのリバースプロキシエントリを追加する代わりに、Mac OSXServerの構成ファイルを利用しようとしています。マッピングは[http://example.com/exist]から[http:// localhost:8080/exist]である必要があります。

eXistが稼働しています。

次のplistファイルを追加しました/Library/Server/Web/Config/apache2/webapps/org.exist-db.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<!-- See man pages for webapp.plist(5) and webappctl(8) for information about this example webapp.plist -->

<plist version="1.0">
     <dict>
         <key>includeFiles</key>
         <array>
             <!-- Include files are activated in virtual host when webapp is started -->
         </array>
         <key>launchKeys</key>
         <array>
             <!-- Launchd plists in /Applications/Server.app/Contents/ServerRoot/System/Library/LaunchDaemons are loaded when webapp is started -->
         </array>
         <key>name</key>
         <string>org.exist-db</string>
         <key>displayName</key>
         <!-- Name shown in Server app -->
         <string>eXist Open Source XML Database</string>
         <key>proxies</key>
         <!-- ProxyPass/ProxyPassReverse directives are activated when webapp is started --> 
         <dict>
             <key>/exist</key>
             <!-- Sets up a reverse proxy -->
             <dict>
                 <key>keysAndValues</key>
                 <string/>
                 <key>path</key>
                 <string>/exist</string>
                 <key>urls</key>
                 <!-- URLs comprise a proxy_balancer group -->
                 <array>
                     <string>http://localhost:8080/exist</string>
                 </array>
             </dict>
         </dict>
         <key>requiredModuleNames</key>
         <array>
             <!-- Apache plugin modules are enabled when webapp is started -->
             <string>proxy_module</string>
         </array>
         <key>requiredWebAppNames</key>
         <array>
             <!-- Required web apps are started when this webapp is started -->
         </array>
         <key>installationIndicatorFilePath</key>
         <!-- The presence of this file indicates web app is installed -->
         <string>/Users/cahlander/eXist-trunk</string>
         <key>sslPolicy</key>
         <!-- Determines webapp SSL behavior -->
         <integer>0</integer>
         <!-- 0: default, UseSSLWhenEnabled -->
         <!-- 1:          UseSSLAlways -->
         <!-- 2:          UseSSLOnlyWhenCertificateIsTrustable -->
         <!-- 3:          UseSSLNever -->
         <!-- 4:          UseSSLAndNonSSL -->
     </dict>
</plist>

ローカルサーバーで実行している場合、http://example.com:8080/existにアクセスすることはできますが、別のマシンからhttp://example.com/existにアクセスすることはできません。また、「eXist Open Source XML Database」は、詳細設定でWebアプリとして表示されるはずです。そうではない。私は何が間違っているのですか?

4

1 に答える 1

0

未解決の問題をすべて修正しましたが、新しい問題が発生しました。

以下をorg.exist-db.plistとして/Library/ Server / Web / Config / apache2/webappsにのみ追加します

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<!-- See man pages for webapp.plist(5) and webappctl(8) for information about this example webapp.plist -->

<plist version="1.0">
    <dict>
        <key>includeFiles</key>
        <array/>
        <key>launchKeys</key>
        <array/>
        <key>name</key>
        <string>org.exist-db</string>
        <key>displayName</key>
        <!-- Name shown in Server app -->
        <string>eXist Open Source XML Database</string>
        <key>proxies</key>
        <!-- ProxyPass/ProxyPassReverse directives are activated when webapp is started -->
        <dict>
            <key>/exist</key>
            <!-- Sets up a reverse proxy -->
            <dict>
                <key>keysAndValues</key>
                <string/>
                <key>path</key>
                <string>/exist</string>
                <key>urls</key>
                <!-- URLs comprise a proxy_balancer group -->
                <array>
                    <string>http://localhost:8080/exist</string>
                </array>
            </dict>
        </dict>
        <key>requiredModuleNames</key>
        <array>
            <!-- Apache plugin modules are enabled when webapp is started -->
            <string>proxy_module</string>
        </array>
        <key>requiredWebAppNames</key>
        <array>
            <!-- Required web apps are started when this webapp is started -->
        </array>
        <key>startCommand</key>
        <string>/Users/cahlander/eXist-trunk/tools/wrapper/bin/exist.sh start</string>
        <key>stopCommand</key>
        <string>/Users/cahlander/eXist-trunk/tools/wrapper/bin/exist.sh stop</string>
        <key>installationIndicatorFilePath</key>
        <!-- The presence of this file indicates web app is installed -->
        <string>/Users/cahlander/eXist-trunk/VERSION.txt</string>
        <key>sslPolicy</key>
        <!-- Determines webapp SSL behavior -->
        <integer>0</integer>
        <!-- 0: default, UseSSLWhenEnabled -->
        <!-- 1: UseSSLAlways -->
        <!-- 2: UseSSLOnlyWhenCertificateIsTrustable -->
        <!-- 3: UseSSLNever -->
        <!-- 4: UseSSLAndNonSSL -->
    </dict>
</plist>

起動しますが、停止しません。エントリは詳細設定に表示されます。GUIから停止しません。

次のコマンドラインエントリは機能しますが、停止して再起動した後、破損しました。

sudo webappctl start org.exist-db

sudo webappctl stoporg.exist-db

于 2012-08-21T02:05:53.603 に答える