关于asp.net:Mono虚拟主机配置错误:地址已在使用中

Mono vhost configuration errors: Address already in use

每次启动apache时,我的apache错误日志中都会出现三种不同的错误消息。我已多次阅读mod_mono配置部分,因此请给我提示如何摆脱这些消息。
应用程序(3个asp.net项目)运行正常。

第一:

1
2
3
Listening on: /tmp/mod_mono_server_global
Root directory: /
Error: Address already in use

秒:

1
Error: There's already a server listening on /tmp/mod_mono_server_global

第三名:

1
2
3
Listening on: /tmp/mod_mono_server_example.com
Root directory: /srv/www/vhosts/example.com
Error: There's already a server listening on /tmp/mod_mono_server_example.com

虚拟主机配置

1
2
3
4
5
6
7
8
9
10
MonoServerPath example.com"/usr/bin/mod-mono-server4"
MonoDebug example.com false
MonoSetEnv example.com MONO_IOMAP=all

MonoApplications example.com"/:/srv/www/vhosts/example.com"

 <Directory"/srv/www/vhosts/example.com">
     MonoSetServerAlias example.com
     SetHandler mono
 </Directory>

OpenSuse 11.4,Mono 2.10.2


第一:
侦听:/ tmp / mod_mono_server_global
根目录: /
错误:地址已在使用中

这听起来好像没有使用该格式加载(然后将其连接到/tmp/mod_mono_server_example_com)

1
MonoApplications example.com"/:/srv/www/vhosts/example.com"

可能是您有更多关于虚拟主机描述的问题,与mod_mono无关:-/

尝试(如果使用不同的虚拟主机名称):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
MonoAutoApplication disabled
AddHandler mono .aspx .ascx .asax .ashx .config .cs .asmx .axd

<VirtualHost *:80>
    ServerName example1.com
    ServerAlias www.example1.com
    DocumentRoot /srv/www/vhosts/example1.com

    MonoServerPath app1"/usr/bin/mod-mono-server4"
    MonoDebug app1 false
    MonoSetEnv app1 MONO_IOMAP=all
    AddMonoApplications app1"/:/srv/www/vhosts/example1.com"

    <Location />
        SetHandler mono
        MonoSetServerAlias app1
    </Location>
</VirtualHost>
<VirtualHost *:80>
    ServerName example2.com
    ServerAlias www.example2.com
    DocumentRoot /srv/www/vhosts/example2.com

    MonoServerPath app2"/usr/bin/mod-mono-server4"
    MonoDebug app2 false
    MonoSetEnv app2 MONO_IOMAP=all
    AddMonoApplications app2"/:/srv/www/vhosts/example2.com"

    <Location />
        SetHandler mono
        MonoSetServerAlias app2
    </Location>
</VirtualHost>

或者(如果只是在同一虚拟主机上的不同文件夹中)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
MonoAutoApplication disabled
AddHandler mono .aspx .ascx .asax .ashx .config .cs .asmx .axd

MonoServerPath app1"/usr/bin/mod-mono-server4"
MonoDebug app1 false
MonoSetEnv app1 MONO_IOMAP=all
AddMonoApplications app1"/app1:/srv/www/vhosts/example.com/app1"

MonoServerPath app2"/usr/bin/mod-mono-server4"
MonoDebug app2 false
MonoSetEnv app2 MONO_IOMAP=all
AddMonoApplications app2"/app2:/srv/www/vhosts/example.com/app2"

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAlias 192.168.0.1
    # note that it this is the conf of first vhost read by apache,
    # it will be used as default, any call not having a matching
    # vhost will fall into that vhost.
    <Location /app1>
        SetHandler mono
        MonoSetServerAlias app1
    </Location>
    <Location /app2>
        SetHandler mono
        MonoSetServerAlias app2
    </Location>
</VirtualHost>

我想你在这里看看http://www.mono-project.com/Mod_mono
检查您使用的是AddMonoApplications而不是MonoApplications

祝你好运


您的Apache配置中的Listen指令可能有冲突。如果那没有帮助,请尝试跟踪Apache并查看错误弹出的套接字或文件。我已经在strace上编写了一个教程,您可能想查看一下。