Forguncyアプリケーションはいわゆるシングルページアプリケーション(SPA)となっており、読み込まれたページ自身からAjaxによりサーバーと通信することでアプリケーションが動作しています。この場合、Ajaxによる通信は相対パスで行われるため、たとえばリバースプロキシの設定でドメイン名やサブディレクトリなどでリクエストの振り分けを行っていると、正常に動作しない場合があります。
ヒント:
リバースプロキシによってマッピングされたアドレスの階層が、「www.bank.com/site1/site2/order」と「192.168.153.25/app」のように異なっている場合、グローバル設定(GlobalConfig.xml)のReverseProxyPathでパスを指定することができます。
Forguncy Server上での外部データベースに関するトラブルシューティングについては、Forguncy Server上での外部データベース接続を参照してください。
Forguncy Serverはアプリケーションの実行時にユーザーアカウントを管理するサービスにアクセスするため、アプリケーション発行時のサーバー名/IPアドレスを使用して自分自身へとアクセスします。そのため、セキュリティの設定などによりそのような経路が制限されている場合、アプリケーションは動作しません。このような場合の回避策は以下の2通りの方法が存在します。
Linuxではファイルディスクリプタを使用して、ファイルシステムのファイルを処理します。システム全体のファイルディスクリプタの最大数を既定値から変更していない場合、Forguncyアプリケーションを複数発行した際にファイルディスクリプタの上限を超えることから、後から発行したアプリケーションが動作しない状態となります。
ファイルディスクリプタ数を変更するには、次の操作をrootユーザーとして行います。
/etc/sysctl.confファイルの次の行のvalue部分を編集します。
fs.file-max = value
valueは設定する新しいファイルディスクリプタの最大数です。
次のコマンドを実行して、変更を適用します。
# /sbin/sysctl -p
ユーザーアカウント情報データベースの構成を外部データベースを設定している場合、以下のときに表題のエラーが発生します。外部データベースを確認してください。
外部データベースへの接続に失敗する。
ユーザーアカウント情報データベースの構造やデータの内容に不備がある。
また、以下の方法でユーザーの保存先を内部データベースへ戻すことができます。
グローバル設定ファイルを編集します。ファイルの格納先は以下のとおりです。
Windows: C:\Users\Public\Documents\ForguncyServer\GlobalConfig.xml
Linux: /opt/ForguncySites/ForguncyServer/GlobalConfig.xml
以下の項目を、いずれも空白に変更します。
UserServiceExternalSqlTypeString
UserServiceExternalSqlConnectionString