单声道+的A​​pache2 =服务暂时不可用(503) [英] Mono + apache2 = Service Temporarily Unavailable (503)

查看:205
本文介绍了单声道+的A​​pache2 =服务暂时不可用(503)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有关一个星期我一直在试图让与Apache运行我的单声道配置。
我必须尝试了几乎任何东西,可耻我注意到没有改变,问题是一样的。

For a week now I've been trying to get my mono configuration running with apache. I must have tried virtually anything, shamefully I notice no changes, the problem remains the same.

当我尝试连接到服务器,我得到一个503错误:服务暂时不可用
当我看看的errror记录它显示为空,我敢肯定它不是一个权限问题。

When I try to connect to the server I get a 503 error: Service Temporarily Unavailable When I take a look at the errror log it appears empty and I'm quite sure it's not an permission problem.

关于Apache:

Package: apache2
Priority: optional
Section: httpd
Installed-Size: 36
Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
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)

关于单:

Package: mono-apache-server2
Priority: optional
Section: httpd
Installed-Size: 260
Maintainer: Debian Mono Group <pkg-mono-group@lists.alioth.debian.org>
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

我使用下面的配置。

I am using the configuration below.

<VirtualHost *:80>
  ServerName myapp.example.com
  ServerAdmin webmaster@example.com
  DirectoryIndex index.html index.aspx
  DocumentRoot /var/www/vhosts/example.com/subdomains/myapp/httpdocs/

  # MonoServerPath can be changed to specify which version of ASP.NET is hosted
  # mod-mono-server1 = ASP.NET 1.1 / mod-mono-server2 = ASP.NET 2.0
  # For SUSE Linux Enterprise Mono Extension, uncomment the line below:
  # MonoServerPath myapp.example.com "/opt/novell/mono/bin/mod-mono-server2"
  # For Mono on openSUSE, uncomment the line below instead:
  MonoServerPath myapp.example.com "/usr/bin/mod-mono-server2"
  #mod-mono-server2

  # To obtain line numbers in stack traces you need to do two things:
  # 1) Enable Debug code generation in your page by using the Debug="true"
  #    page directive, or by setting <compilation debug="true" /> in the
  #    application's Web.config
  # 2) Uncomment the MonoDebug true directive below to enable mod_mono debugging
  MonoDebug myapp.example.com true
  # The MONO_IOMAP environment variable can be configured to provide platform abstraction
  # for file access in Linux.  Valid values for MONO_IOMAP are:
  #    case
  #    drive
  #    all
  # Uncomment the line below to alter file access behavior for the configured application
  MonoSetEnv myapp.example.com MONO_IOMAP=all
  #
  # Additional environtment variables can be set for this server instance using
  # the MonoSetEnv directive.  MonoSetEnv takes a string of 'name=value' pairs
  # separated by semicolons.  For instance, to enable platform abstraction *and*
  # use Mono's old regular expression interpreter (which is slower, but has a
  # shorter setup time), uncomment the line below instead:
  # MonoSetEnv myapp.example.com MONO_IOMAP=all;MONO_OLD_RX=1
  MonoApplications myapp.example.com "/:/var/www/vhosts/example.com/subdomains/myapp/httpdocs/"

  <Location "/">
    Order allow,deny
    Allow from all
    MonoSetServerAlias myapp.example.com
    SetHandler mono
    SetOutputFilter DEFLATE
    SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
  </Location>
  <IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
  </IfModule>

  ErrorLog  /var/www/vhosts/example.com/subdomains/myapp/logs/error.log
  CustomLog /var/www/vhosts/example.com/subdomains/myapp/logs/access.log combined

</VirtualHost>

任何人都可以帮助我。

Can anyone help me out.

在此先感谢,
蒂姆·

Thanks in advance, Tim

推荐答案

你有没有试过是mod_mono自动配置功能
这显然​​是与Apache /黑白/ ASP.NET堆栈的最佳方法。有了它,你不再需要在你的虚拟主机来定义所有单声道设置。

Have you tried the mod_mono AutoConfiguration feature ? This is clearly the best approach with the Apache/Mono/ASP.NET stack. With it, you don't need anymore to define all Mono settings in your virtual host.

下面是我的mod_mono.conf文件(在Mac OS X 10.7.2和Linux操作系统Ubuntu 11.04,这应该是与您的Debian发行版兼容):

Here is my mod_mono.conf file (on Mac OS X 10.7.2 and Linux Ubuntu 11.04, this should be compatible with your Debian distro) :

<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>

最重要的指令是MonoAutoApplication之一。
这里是一个样本虚拟主机:

The most important directive is the "MonoAutoApplication" one. And here is a sample virtual host :

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

正如你可以看到,虚拟主机被减少到最简单的前pression。在mod_mono.conf文件中定义的设置是由所有的虚拟主机共享。结果
该解决方案的唯一缺点是,它不会让你重新启动一个ASP.NET网站只有一个实例(如微软的IIS)。如果您使用单声道的控制面板(参见位置一节),以重新启动的过程中,所有的ASP.NET应用程序重新启动。

As you can see, the virtual host is reduced to its simplest expression. The settings defined in the mod_mono.conf file are shared by all the virtual hosts.
The only drawback of this solution is that it does not let you restart only one instance of an ASP.NET site (as in Microsoft IIS). If you use the Mono control panel (see "Location" section) to restart the process, all ASP.NET applications are restarted.

这篇关于单声道+的A​​pache2 =服务暂时不可用(503)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆