Почему сервер ASP.NET работает на localhost:8084?

Почему сервер ASP.NET работает на localhost:8084?

При попытке убить монопроцесс, я запустил ps -aux | grep mono. Он выдал одну запись, которая началась вчера и была запущена пользователем www-data, и с командой /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. Это нормальный процесс? Я использую MonoDevelop для разработки приложений ASP.NET, но это, похоже, не связано, так как я недавно перезапустил MonoDevelop.

решение1

Как указано вэтот ответ Томаса на AskUbuntu, достаточно просто остановить или отключить этот сервер, но вы можете подумать, хотите ли вы, чтобы он действительно работал, прежде чем это сделать. Я нашел этот вопрос, когда исследовал эту точно такую ​​же проблему на своей машине 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, ссылку на который я здесь дал, так как это также точный ответ на этот вопрос здесь...

Связанный контент