mod-mono-server 4 não está funcionando, enquanto 2 faz

2

Eu preciso implantar um aplicativo ASP.NET MVC4 (MVC3 pelo menos) no servidor Centos 6.

Instalei o Mono 3.2.1, XSP4, mod_mono (para uso com o servidor da web apache) e executei com êxito o aplicativo de teste que acompanha o mono. Eu usei uma ferramenta de configuração para criar uma configuração para o diretório de aplicativos e implantei um projeto ASP.NET WebPages vazio criado no VS2012 no .net 2.0 - ele rodou ok. Mas eu preciso executar um .net 4.5 ou pelo menos 4.0 aplicativo, então eu defini o MonoServerPath para mod-mono-server4 em vez de mod-mono-server2 na configuração, mas agora estou recebendo um "serviço temporariamente indisponível "erro ao tentar acessar o diretório do projeto asp.net (mesmo vazio).

O que devo verificar?

Atualização: eu verifiquei o log do apache e aqui o que ele mostra:

mod-mono-server4
Exception caught during reading the configuration file:
System.MissingMethodException: Method not found: 'System.Configuration.IConfigurationSectionHandler.Create'.
  at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in <filename unknown>:0 
  at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in <filename unknown>:0 
  at System.Configuration.ConfigurationManager.get_AppSettings () [0x00000] in <filename unknown>:0 
  at Mono.WebServer.Apache.Server.get_AppSettings () [0x00001] in /usr/src/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:208 
  at Mono.WebServer.Apache.Server+ApplicationSettings..ctor () [0x0002a] in /usr/src/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:63 
mod-mono-server4
Listening on: /tmp/mod_mono_server_Unreal
Root directory: /var/www/html/Unreal
Error: An exception was thrown by the type initializer for System.Net.Sockets.Socket
mod-mono-server4
Exception caught during reading the configuration file:
System.MissingMethodException: Method not found: 'System.Configuration.IConfigurationSectionHandler.Create'.
  at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in <filename unknown>:0 
  at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in <filename unknown>:0 
  at System.Configuration.ConfigurationManager.get_AppSettings () [0x00000] in <filename unknown>:0 
  at Mono.WebServer.Apache.Server.get_AppSettings () [0x00001] in /usr/src/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:208 
  at Mono.WebServer.Apache.Server+ApplicationSettings..ctor () [0x0002a] in /usr/src/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:63 
mod-mono-server4
Listening on: /tmp/mod_mono_server_Unreal
Root directory: /var/www/html/Unreal
Error: An exception was thrown by the type initializer for System.Net.Sockets.Socket
mod-mono-server4
Exception caught during reading the configuration file:
System.MissingMethodException: Method not found: 'System.Configuration.IConfigurationSectionHandler.Create'.
  at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in <filename unknown>:0 
  at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in <filename unknown>:0 
  at System.Configuration.ConfigurationManager.get_AppSettings () [0x00000] in <filename unknown>:0 
  at Mono.WebServer.Apache.Server.get_AppSettings () [0x00001] in /usr/src/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:208 
  at Mono.WebServer.Apache.Server+ApplicationSettings..ctor () [0x0002a] in /usr/src/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:63 
mod-mono-server4
Listening on: /tmp/mod_mono_server_Unreal
Root directory: /var/www/html/Unreal
Error: An exception was thrown by the type initializer for System.Net.Sockets.Socket
[Wed Sep 25 08:45:13 2013] [error] Failed to connect to mod-mono-server after several attempts to spawn the process.

Atualização 2

Bem, depois de procurar no Google, encontrei a solução ...

Para corrigir isso vc tem que copiar mod-mono-server4.exe de /opt/mono/lib/mono/4.0 (ou onde quer que você tenha instalado) para / opt / mono / lib / mono / 4.5 e depois editar o mod-mono-server4 em / opt / mono / bin a partir de

exec /opt/mono/bin/mono $MONO_OPTIONS "/opt/mono/lib/mono/4.0/mod-mono-server4.exe" "$@"

para

exec /opt/mono/bin/mono $MONO_OPTIONS "/opt/mono/lib/mono/4.5/mod-mono-server4.exe" "$@"
    
por Vladimir Glushkov 25.09.2013 / 14:40

1 resposta

1

A resposta foi incluída como parte da pergunta - apenas para esclarecer que a resposta foi copiada e colada como resposta:

To fix it u have to copy mod-mono-server4.exe from /opt/mono/lib/mono/4.0 (or wherever u've installed it) to /opt/mono/lib/mono/4.5 and then to edit mod-mono-server4 in /opt/mono/bin from

exec /opt/mono/bin/mono $MONO_OPTIONS "/opt/mono/lib/mono/4.0/mod-mono-server4.exe" "$@" to

exec /opt/mono/bin/mono $MONO_OPTIONS "/opt/mono/lib/mono/4.5/mod-mono-server4.exe" "$@"

    
por 01.12.2014 / 10:24