Home > トラブルシューティング > HTTPエラー
このトピックは、HTTPエラーとMagic xpiを使用する時の対処方法についてに説明しています。
認証のために使用されたユーザは適切な証明書を持つべきです。仮想ディレクトリの[ディレクトリセキュリティ]タブをチェックしてください。参照: http://support.microsoft.com/kb/871179.
仮想ディレクトリの[実行権利]を確認してください。少なくともScriptsのみに設定する必要があります。.
Web サービス拡張で許可されたモジュールについて確認してください。.ASP.NETは許可する必要があります。
.NETフレームワーク4.0がサーバにインストールされることを確認してください。%windir%\Microsoft.NET\Frameworkに移動し、v4.0…フォルダが存在していることを確認してください。
存在していない場合、.NETフレームワークをインストールします(dotNetFx40_Full_x86_x64.exe)。ここをクリックすることでファイルをダウンロードすることができます。
捜しているリソースが削除されているか、名前が変更されたか、一時的に利用できません。
オプション1: 応対されたハンドラは、インストールによって設定されていないかもしれません。
[ハンドラーマッピング]を実行します。
ハンドラパラメータが正しく設定されることを確認してください。[名前]プロパティは、web.configハンドラセクションに存在している値と一致しているはずです。
オプション2:
web.configファイルは、Webサイトのルートフォルダから賜与されるものです。web.configファイルが存在していて、ハンドラがその中で設定されることを確認してください。
Webサイトの物理パスは、ルート上のScriptsフォルダに設定してください。
webRequesterサイトは実行していなければなりません。
Webサイトアプリケーション名が、アクセスしようとするアドレスと同じであることを確認してください。
プロジェクトからサービストリガのリンクを使用している場合、その中のdllへのパスがダブルクオーテーション("")によって囲まれていることを確認してください。
このエラーは、IISのためにサイズ制限によるものです。IISは、リクエストを受け取る場合は、デフォルトで最大 48Kのサイズで制限されます。maxRequestEntityAllowedとuploadReadAheadSizeのメタデータプロパティを、48K以下に設定してください。
例えば:
C:\Windows\System32\inetsrv>appcmd set config -section:asp -limits.maxRequestEntityAllowed:1000000
"MACHINE/WEBROOT/APPHOS"のために"system.webServer/asp"セクションの構成の変更を適用し、"MACHINE/WEBROOT/APPHOST"をコミットパスとして設定します。
C:\Windows\System32\inetsrv>appcmd.exe set config -section:system.webServer/serverRuntime /uploadReadAheadSize:1000000
"MACHINE/WEBROOT/APPHOS"のために"system.webServer/serverRuntime"セクションの構成の変更を適用し、"MACHINE/WEBROOT/APPHOST"をコミットパスとして設定します。
内部のサーバエラーが発生したため、ページが表示されません。
特殊文字を使用した場合、HTTPリクエストはIISに拒否されるかもしれません。
Webリクエスタログは、HTTPリクエストの検証で例外が含まれます。
2013-04-04 08:50:17,492 [15] ERROR AspNetWebRequester.WebRequestHandler - Exception: System.Web.HttpRequestValidationException (0x80004005): A potentially dangerous Request.Form value was detected from the client (Argument2="דרו...").
at System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection)
at System.Web.HttpRequest.ValidateNameValueCollection(NameValueCollection nvc, RequestValidationSource requestCollection)
at System.Web.HttpRequest.get_Form()
at AspNetWebRequester.WebRequestHandler.ObtainQueryStringCollection() in D:\Dev\VSS_iBOLT_GS\WebRequester\ASPNetWebRequestHandler\WebRequestHandler.cs:line 172
以下を行うことでクエリ文字列の検証を無効にすることでこの問題を解決することができます。
system.web
エントリの配下の<installation_root>\Scriptの下のweb.configファイルで、以下を設定を行ってください。
<httpRuntime requestValidationMode="2.0"/>
<pages validateRequest="false" />
変更内容が反映されるには、IISを再起動してください。
内部のサーバエラーが発生したため、ページが表示されません。
このエラーは、リクエストがリクエスタに渡ったことを意味していますが、依存関係の dllファイルは見つからないか、バージョンが違う可能性があります。これは、GigaSpacesのdllファイルと関連しています。
<Magic xpiインストール>Runtime\Scripts\bin\GigaSpacesフォルダのGigaSpaces用dllファイルを確認して、バージョンが9.1.0.7500または空のままになっているはずです。
このエラーについての追加情報は、次を参照してください http://support.microsoft.com/kb/942031.
内部のサーバエラーが発生したため、ページが表示されません。
このエラーは、要求されたユニークなプロジェクトのエンドポイントがプロジェクトに存在しておらず、フローがアクティブでなく、プロジェクトが全く動作していないことを意味しています。
プロジェクトが実行していることをモニタで確認してください。
関連したフローがアクティブであることを確認してください。
ログの追加情報を捜してくださいg (“HTTP request failed. Service operation requested does not exists or Flow inactive”).
uniqueEndpointを検索し、Spaceに存在しているHttpDataオブジェクトと一致させてください。
このエラーは、サーバのためのFlowRequestメッセージへのWebリクエストの変換と関連しています。projectKeyのような 必須のパラメータが指定されていないかもしれません。
2012-12-11 16:40:16,837 [ERROR]:[magicxpi.spaceservices.space]: CONVERT_FAILED. Converting HttpRequest to FlowRequest failed. General error. HttpReqeust: exchangeId=[18446744073708994119] [PID:18832:GS-http2IFR-1] Http2IFR.processHttpReq:-1
com.magicsoftware.xpi.server.common.ApplicationException: The request does not contain a projectKey. ("appname" variable)
このエラーも、リクエストURLのエスケープコードのためであり、URLは切りつめられるかもしれません。詳細は次を参照してください: http://www.december.com/html/spec/esccodes.html. 項目間にアンパサンド(&)があり空白が無いこと、そしてサービス処理は番号記号(#)の代わりに%23が含まれていることをを確認してください。
内部のサーバエラーが発生したため、ページが表示されません。
このエラーが発生した場合、<Magic xpiインストール>\Runtime\Scripts\config\Logs フォルダにあるWebリクエスタのログに error 126 が含まれます。
"2016-08-08 16:53:48,928 [6] ERROR AspNetWebRequester.WebRequestHandler - Exception: GigaSpaces.NetToJava.NetToJavaException: Unable to load JVM dll [c:\Magic xpi 4.6\JRE\bin\client\jvm.dll], error code 126
at GigaSpaces.NetToJava.JVMBridge.LoadDll(String dllFile)
at GigaSpaces.NetToJava.JVMBridge.LoadJVMModuleIfNeeded(IJVMConfig jvmConfig)
at GigaSpaces.NetToJava.JVMBridge.GetJvmIfExists(IJVMConfig jvmConfig)
at GigaSpaces.NetToJava.JVMBridge.InitJVM(IJVMConfig jvmConfig)
at GigaSpaces.Core.Internal.Providers.Cmd.CmdSpaceProxyFactory..ctor(XapNetEnvironment xapNetEnv)
at GigaSpaces.Core.GigaSpacesFactory.Initialize()
at GigaSpaces.Core.GigaSpacesFactory.FindSpace(String url, SpaceConfig spaceConfig, SecurityContext securityContext)
at AspNetWebRequester.WebRequestHandler.ProcessRequest(HttpContext httpContext)"
このエラーは64ビットと32ビットのdllファイルの間での不適当な組合せに関連しています。
64ビットのOS上では、Magic xpi の x86サーバとJavaバージョンで動作するため x86 dlls の.NETフレームワークをインストールする必要があります。
.NETフレームワーク4.0がターゲットPCにインストールされていることを確認してください。
.NETフレームワークをインストールする必要がある場合、.NETフレームワーク4.0をインストールするために、dotNetFx40_Full_x86_x64.exe[~49、268KB]をインストールしてください。.NETフレームワーク4.0(dotNetFx40_Full_setup.exe [~869KB])のWebインストーラバージョンを実行することは、対応したプラットフォーム(64ビットのサーバ上で、32ビットがサポートされないことを意味しています)のために必要なファイルだけをダウンロードします。古いバージョンでは、Magic xpiのリクエスタは動作しません。
.NETフレームワークをインストールした後に、IISコンソールからの通常のリセットが動作しないかもしれません。管理者権限でを持つコマンドラインからiisresetコマンドを実行してください。
注意: 64ビットの設定でIISベースのWebリクエスタを実行させるには、追加の設定が必要です。追加設定なしでは動作しません。以下の追加の手順が必要となります。
64ビットのフォルダからScripts\binフォルダにdllファイルをコピーしてください。
Webサイトが、64ビットをサポートするアプリケーションプールを参照することを確認してください。
Java 64ビットのバージョンをシステム環境変数(PATH | JAVA_HOME)にインストールし、設定してください。
ページに関連した構成データが無効なため、要求されたページにアクセスすることができません。
Webリクエスタが、インストールされたJREとGigaSpacesフォルダにアクセスする必要があるため、検証されたユーザ権利をMagic xpaのインストールフォルダに追加してください。
さらに、特定の機能がサーバにインストールされていなければ、このエラーが発生するかもしれません。それをインストールすると、再起動する必要があります。
最初に、ASP.NET 4.5 の機能がインストールされるかどうかを確認してください。
サーバマネジャーを開き、[役割と機能の追加]をクリックしてください。
[役割]セクションで、Webサーバを選択してください。
[セキュリティ]のサブセクションで、すべて選択してください。
[アプリケーション開発]セクションで、.NET 4.5拡張、ASP.NET 4.5、およびISAPIエントリを選択してください。
[機能]セクションで、.
NET3.5、.NET 4.5、およびASP.NET 4.5 を選択してください。
[Webサーバ]セクションで、Webサーバ(すべて)、管理ツール(IIS管理コンソールと管理サービス)、Windows認証
を使用している場合は選択してください。
64ビットのOS上で、以下を行います。
.NET 4 のフルクライアント(dotNetFx40_Full_x86_x64.exe)がインストールされていることを確認してください。
MicrosoftのVC++ 2010 再配布可能パッケージ(vcredist_x86.exe)がインストールさられることを確認してください。
applicationHost.configファイルで、overrideModeDefault 属性を、Allow に設定してください。
C:\Windows\System32\inetsrv\config\applicationHost.config
<sectionGroup name="system.webServer">
....
<section name="handlers" overrideModeDefault="Allow" />
....
検証されているユーザ権利をインストールフォルダから削除してください。
ASP.NET機能がインストールされたかどうかを、[Windowsの機能]ダイアログボックスで確認してください。
ASP.NETのインストールが正しく登録されていないかもしれません。それを登録するために以下を試してください。
管理者権限を持つ コマンドプロンプトから以下のコマンドを実行してください。 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
ASP.NET 設定が、統合されたマネージ パイプライン モードで適用されないことが検出されました。
IIS 6とIIS7の両方で1つの web.configファイル(Magic xpi の Web.configファイル)を使用する場合、system.webServerエントリに検証エントリを設定する必要があります。
<Magic xpiインストール>\Runtime\Scripts フォルダのweb.configファイルに以下の行が含まれていることを確認してください。
<system.webServer>
...
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
関連したアプリケーションプールが不意に停止した場合、.NETバージョンがサーバにインストールされないことを示しているかもしれません。
関連したアプリケーションプールがまだ実行しているかどうかを確認してください。それが停止している場合、以下の項目が.NETフレームワーク4.0オプションが無いためなのかを確認してください。
.NETフレームワーク4.0をインストールした後に、関連したアプリケーションプールが再起動されていることを確認してください。まだ停止している場合、手動で再起動してください。
NETフレームワーク4.0がPCにインストールされるかどうかを確認してください。PCには、%windir%\Microsoft.NET\Framework\v4.0.30319 フォルダに .NET 4.0 の内容がある必要があります。
.NET 4 フルクライアント(dotNetFx40_Full_x86_x64.exe)がインストールされていることを確認してください。
アプリケーションと関連したアプリケーションプールを開始してください。
必要ならば、管理者権限で次のコマンドを実行してください: C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
インストールのルートディレクトリが書込権利を持っているかどうかを確認してください。