この記事は、Liferay PortalがWebサーバーの後ろで動作している場合に、WebDAVクライアントからLiferay WebDAVフォルダとファイルに接続する方法を文書化したものです。
具体的には、IBM WebSphereアプリケーションサーバーとIBMのHTTPサーバー(一般にIHSと略される)を使用してこの問題が発見されました。 クライアントは、ブラウザの403 Unauthorized Errorや内部コードの500エラーを経験しています。 IBMによると、その理由は、IBMのWebサーバーのプラグイン設定がデフォルトで、 falseに設定されているためです。 false に設定すると、 POST および PUT のリクエストのみを受け付けます。 これを true に変更すると、 WebDAV PROFIND 方式のようなすべてのリクエストを受け付けるようになります。
解像度
- すべてのHTTPサーバーのプロセスを停止します。
- すべてのWebSphereアプリケーションサーバプロセスを停止します。
- 作成したプロファイルごとに
plugin-cfg.xmlを生成する。- Windowsの場合、
C:¥Program Files (x86)¥IBMWebSphere¥AppServer¥binに移動してください。 - UNIXLINUXの場合、
⇦was_install_dir⇦binに移動します。 - コマンドの実行
GenPluginCfg.bat|.sh -profileName profile_name
- Windowsの場合、
-
plugin-cfg.xmlが生成される場所に移動します。 コマンドプロンプトには、ファイルが置かれている場所が記載されます(例:C:︓Program FilesIBMWebSphere︓AppServer︓profilesⒸAppSrv01ⒸconfigⒸplugin-cfg.xml) - XMLファイルを開いて、プロパティ
AcceptALLContent=を見つけてください。 デフォルトでは、falseに設定されています。 このプロパティをtrue に変更する. WebSphere Application Serverの新しいバージョンでは、このプロパティがtrueに設定されていることに注意してください。 -
plugin-cfg.xmlが複数ある場合は、pluginMerge ツールで設定を統合してください。 -
plugin-cfg.xmlをIHS の \confttpd.confファイルで指定された場所にコピーします。 - IBM HTTP Serverを再度起動します。
- IBM WebSphere アプリケーション・サーバーを起動します。
- WebDAVクライアントをLiferayのDocuments and Mediaに接続します。
追加情報
- IBM-Supportです: AcceptAllContent=falseの場合、WEBDav PROPFINDメソッドはHTTP 500 Internal Server Errorで失敗します。
- IBM HTTP Server V7.0 Plugin for Routing Client Requestsを手動で設定する。