2012-02-22 26 views
18

私はApacheのエラーログにApacheを起動するたびに3つの異なるエラーメッセージが表示されます。私はmod_mono設定のセクションを何度も読んだので、このメッセージを取り除く方法を教えてください。 アプリケーション(3 asp.netプロジェクト)はうまく動作しています。モノの仮想ホスト設定エラー:アドレスはすでに使用中です

最初:

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

秒:

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

第三:

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 

バーチャルホストの設定

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

+0

あなたは問題を解決しましたか? –

+0

いいえ、私のログには、私がApacheのサービスを開始するたびに表示されますが、アプリケーションは正常に動作しています。私は誰かが私に修正案を伝えるまで、メッセージを無視しているだけです。 – Epstone

答えて

1

まず: がリスニング:/ tmpに/ mod_mono_server_global ルートディレクトリ:/ エラー:すでに使用されている。これは、それのように聞こえる

は、そのフォーマットを使用してロードされていないアドレスが

(それはその後 /tmp/mod_mono_server_example_comに接続します)
MonoApplications example.com "/:/srv/www/vhosts/example.com" 

それはあなたが、mod_monoとは何の関係もバーチャルホスト記述の問題の多くを持っていないことでした: -/

(上の場合にしてみてください別のバーチャルホスト名):

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> 

か、その()ちょうど同じバーチャルホスト上の別のフォルダにある場合

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> 

私はあなたがここにあなたがAddMonoApplicationsないMonoApplications

を使用している http://www.mono-project.com/Mod_mono チェックを見ていたと思います

幸運

+0

ちょっとアントニー、あなたの答えは非常に高く評価されています。私はそれを受け入れるだろうが、私は最近nginxとfastcgi-mono-serverに切り替えたので、実際にそれをさらにテストすることはできない。 – Epstone

0

あなたのApache構成では、Listenディレクティブが競合する可能性があります。それが役に立たない場合は、Apacheをstraceして、エラーがポップアップするソケットまたはファイルを確認してください。私はstraceに関するチュートリアルを書いた、あなたはcheck it outすることができます。

関連する問題