2011-11-01 18 views
7

Bir hafta için, mono yapılandırmamın apache ile çalışmasını sağlamaya çalışıyorum. Hemen hemen herşeyi denemeliydim, utanç verici olarak hiçbir değişiklik fark etmiyorum, sorun aynı kalıyor.Mono + apache2 = Hizmet Geçici Olarak Kullanılamıyor (503)

Sunucuya bağlanmaya çalıştığımda 503 hatası alıyorum: Hizmet Geçici olarak Kullanılamıyor Hata günlüğüne baktığımda boş görünüyor ve bunun bir izin sorunu olmadığından eminim. apache Hakkında

:

Package: apache2 
Priority: optional 
Section: httpd 
Installed-Size: 36 
Maintainer: Debian Apache Maintainers <[email protected]> 
Architecture: amd64 
Version: 2.2.16-6+squeeze4 
Depends: apache2-mpm-worker (= 2.2.16-6+squeeze4) | apache2-mpm-prefork (= 2.2.16-6+squeeze4) | apache2-mpm-event (= 2.2.16-6+squeeze4) | apache2-mpm-itk (= 2.2.16-6+squeeze4), apache2.2-common (= 2.2.16-6+squeeze4) 

mono hakkında: Aşağıda yapılandırmayı kullanıyorum

Package: mono-apache-server2 
Priority: optional 
Section: httpd 
Installed-Size: 260 
Maintainer: Debian Mono Group <[email protected]> 
Architecture: all 
Source: xsp 
Version: 2.6.5-3 
Replaces: mono-server 
Depends: debconf (>= 0.5) | debconf-2.0, mono-runtime (>= 1.1.8.1), libc6 (>= 2.11) | libc6.1 (>= 2.11) | libc0.1 (>= 2.11), libmono-corlib2.0-cil (>= 2.6.3), libmono-posix2.0-cil (>= 2.4), libmono-security2.0-cil (>= 2.6.7), libmono-system-web2.0-cil (>= 1.9.1), libmono-system2.0-cil (>= 2.6.3), mono-xsp2-base (= 2.6.5-3), perl-modules 

.

Herkes bana yardımcı olabilir. peşin

sayesinde Tim

+0

Bir yanıtı kabul ettiniz, ancak hiç yorum bırakmadınız, bu yüzden işi yaptım, değil mi? – mbx

cevap

5

Eğer mod_mono AutoConfiguration feature denediniz mi? Bu, Apache/Mono/ASP.NET yığınıyla açıkça en iyi yaklaşımdır. Bununla birlikte, sanal konakınızda tüm Mono ayarlarını tanımlamanıza gerek kalmaz.

<IfModule mono_module> 
    AddType application/x-asp-net .config .cs .csproj .dll .resources .resx .sln .vb .vbproj 
    AddType application/x-asp-net .asax .ascx .ashx .asmx .aspx .axd .browser .licx .master .rem .sitemap .skin .soap .webinfo 

    MonoAutoApplication enabled 
    MonoDebug false 
    MonoServerPath "/usr/bin/mod-mono-server4" 
    MonoSetEnv LANG=fr_FR.UTF-8 
    MonoUnixSocket "/tmp/.mod_mono" 

    <IfModule dir_module> 
     DirectoryIndex Default.aspx 
    </IfModule> 

    <DirectoryMatch "/(bin|App_Code|App_Data|App_GlobalResources|App_LocalResources)/"> 
     Order deny,allow 
     Deny from all 
    </DirectoryMatch> 

    <Location "/Mono"> 
     Order deny,allow 
     Deny from all 
     Allow from 127.0.0.1 ::1 
     SetHandler mono-ctrl 
    </Location> 
</IfModule> 

en önemli direktif "MonoAutoApplication" dir: Burada

(bu sizin Debian dağıtımla olan uyumlu olmalıdır Mac OS X 10.7.2 ve Linux Ubuntu 11.04 üzerinde) benim mod_mono.conf dosyasıdır bir. Gördüğünüz gibi

<VirtualHost *:80> 
    ServerName www.monorules.fr 
    DocumentRoot "/Library/WebServer/Documents/MonoRules" 
</VirtualHost> 

, sanal konak En basit ifadesi indirgenir: Ve burada örnek bir sanal ev sahipliği yapmaktadır. Mod_mono.conf dosyasında tanımlanan ayarlar, tüm sanal konaklar tarafından paylaşılır.
Bu çözümün tek dezavantajı, yalnızca bir ASP.NET sitesinin örneğini (Microsoft IIS'de olduğu gibi) yeniden başlatmanıza izin vermemesidir. İşlemi yeniden başlatmak için Mono kontrol panelini kullanırsanız (bkz. "Konum" bölümü), tüm ASP.NET uygulamaları yeniden başlatılır.

+0

Teşekkürler. Bu benim için çalıştı. – Reinaldo

1

Mod mono'yu doğru şekilde yüklediyseniz ve apache2'de etkinleştirilmişse, aşağıdaki yapılandırma sanal sunucunuzla çalışmalıdır.

<VirtualHost *:80> 
ServerName myapp.example.com 
    ServerAdmin [email protected] 
    DirectoryIndex index.html index.aspx 
    DocumentRoot /var/www/vhosts/example.com/subdomains/myapp/httpdocs/ 

AddMonoApplications myapp.example.com "/:/var/www/vhosts/example.com/subdomains/myapp/httpdocs/" 
MonoServerPath myapp.example.com "/usr/bin/mod-mono-server2" 

<Directory /var/www/vhosts/example.com/subdomains/myapp/httpdocs/> 
    MonoSetServerAlias myapp.example.com 
    SetHandler mono 
    AddHandler mod_mono .aspx .ascx .asax .ashx .config .cs .asmx 
    <FilesMatch "\.(gif|jp?g|png|css|ico|xsl|wmv|zip)$"> 
     SetHandler None 
    </FilesMatch> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow, deny 
    Allow from all 
    DirectoryIndex index.aspx 
</Directory> 
</VirtualHost> 
+0

Çok teşekkürler! Başka bir soru, örneğin, DNSADRESS/mvctest/public_html dosyasına eriştiğimde uygulamanın nasıl çalışması gerekir? –