
mono プロセスを終了しようとしているときに、 を実行しましたps -aux | grep mono
。昨日開始され、ユーザー www-data によって実行され、コマンド で実行されたエントリが 1 つ見つかりました/usr/bin/mono /usr/lib/mono/4.5/xsp4.exe --port 8084 --address 0.0.0.0 --appconfigdir /etc/xsp4 --nonstop
。これに基づいて、localhost:8084 に移動すると、エラーが発生しました。
System.ArgumentOutOfRangeException
startIndex cannot be larger than length of string.
Parameter name: startIndex
Description: HTTP 400.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): mscorlib.
ASP.NET 4.0 で実行されていると記載されています。このプロセスは正常ですか? ASP.NET アプリの開発には MonoDevelop を使用していますが、最近 MonoDevelop を再起動したので、これは関係ないようです。
答え1
指摘されているようにAskUbuntuのThomasによるこの回答、このサーバーを停止または無効にするのは簡単ですが、実行する前に実際に実行する必要があるかどうかを検討することをお勧めします。私は自分の Kubuntu 18.04 LTS マシンでこれと同じ問題を調査しているときにその質問を見つけ、それが実際に何であるかをさらに深く調べるのに役立ちました。 および にあるファイルの内容を調べることで判断できたように、それは を提供するのに使用されていることがわかりましmonodoc-http
た。/etc/xsp4
/usr/share/monodoc/web
MonoDevelop や MonoDoc など、Mono でのコード開発に関連するものをインストールした場合、それがそのソースです。Mono を学習またはコーディングするために意図的にインストールした場合は、実際にそのサービスを実行する必要があるかもしれません。MonoDoc サービスを使用しない場合は、Ubuntu のフレーバーで . を使用して簡単に無効にすることができますsystemctl
。
sudo systemctl stop mono-xsp4.service
サービスを停止します
(ただし無効にはならないので、意思次回の再起動後に再度実行してください)。sudo systemctl disable mono-xsp4.service
サービスを無効にします
(ただし、現在実行中の場合は停止しません)。
走らなければならない両方実際に今すぐサービスを停止したい場合は、そして次回の再起動後にサービスが実行されないようにサービスを無効にします。MonoDoc および関連サービスがまったく必要ないことが確実な場合は、パッケージ マネージャーでそれらを検索し、完全にアンインストールすることもできます。
なぜ例外が発生するのかというと、それ私はしますない知っている。ブラウザで直接アクセスした場合、私のシステムでも同じです。おそらく、MonoDocがデフォルトで渡すパラメータが必要で、ブラウザで直接アクセスするだけではない与える? (確実に知っている方は、この回答を編集してその情報を含めるか、私に連絡して更新できるようにしてください。)
注記: これはほぼそのままコピー&ペーストしたもので、私のここでリンクした AskUbuntu の同じ質問に対する回答ですが、ここにあるこの質問に対する正確な回答でもあります...