У меня установлена виртуальная машина CentOS 7 со всеми пакетами httpd / mysql и т. Д. Я хотел запустить систему билетов под названием SmarterTrack, которая встроена в ASPX. Посмотрел все и установил необходимые пакеты, которые смог найти в Интернете (моно-сервер и xsp).
Кажется, сейчас все работает нормально (работает моно-сервер и т. Д.), Но когда я захожу на сайт, я получаю ошибку 500:
System.NotImplementedException
The method or operation is not implemented.
Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): System.Web.
Exception stack trace:
at System.Web.Security.FileAuthorizationModule.Init (System.Web.HttpApplication app) [0x00000] in /builddir/build/BUILD/mono-4.2.1/mcs/class/System.Web/System.Web.Security/FileAuthorizationModule.cs:51
at System.Web.Configuration.HttpModulesSection.LoadModules (System.Web.HttpApplication app) [0x00052] in /builddir/build/BUILD/mono-4.2.1/mcs/class/System.Web/System.Web.Configuration_2.0/HttpModulesSection.cs:82
at System.Web.HttpApplication.InitOnce (Boolean full_init) [0x000a4] in /builddir/build/BUILD/mono-4.2.1/mcs/class/System.Web/System.Web/HttpApplication.cs:216
И в моем журнале ошибок httpd я вижу следующее:
Listening on: /tmp/mod_mono_server_testing.mydomain.com
Root directory: /var/www/clients/client1/web9/web/
Exception while initOnce: System.NotImplementedException: The method or operation is not implemented.
at System.Web.Security.FileAuthorizationModule.Init (System.Web.HttpApplication app) [0x00000] in /builddir/build/BUILD/mono-4.2.1/mcs/class/System.Web/System.Web.Security/FileAuthorizationModule.cs:51
at System.Web.Configuration.HttpModulesSection.LoadModules (System.Web.HttpApplication app) [0x00052] in /builddir/build/BUILD/mono-4.2.1/mcs/class/System.Web/System.Web.Configuration_2.0/HttpModulesSection.cs:82
at System.Web.HttpApplication.InitOnce (Boolean full_init) [0x000a4] in /builddir/build/BUILD/mono-4.2.1/mcs/class/System.Web/System.Web/HttpApplication.cs:216
Please restart your app to unlock it
В чем может быть проблема?
К сожалению, в Mono нет реализации для (System.Web.Security) FileAuthorizationModule. Как вы можете видеть в связанном контенте, класс существует как заглушка, поэтому компиляция с ним работает, но во время выполнения он не будет работать должным образом.
После того, как Microsoft выпустила исходники .NET с лицензией MIT, можно было подумать, что Mono может принять источники ссылок для этого класса, однако в настоящее время это невозможно, потому что этот класс использует под капотом класс UnsafeNativeMethods, который дает намек на то, что он использует некросс-платформенный подход (однако Mono должен оставаться совместимым с платформами, отличными от Windows).