2

在测试盒上:

root@ubuntu:/var/www# mono --version
Mono JIT compiler version 3.0.6 (Debian 3.0.6+dfsg-1~exp1~pre1)
Copyright (C) 2002-2012 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug
    LLVM:          supported, not enabled.
    GC:            Included Boehm (with typed GC and Parallel Mark)

XSP(从 gi​​thub 编译)

root@ubuntu:/var/www# xsp4 --version
Mono.WebServer2.dll 0.4.0.0
(c) (c) 2002-2011 Novell, Inc.
Classes for embedding an ASP.NET server in your application .NET 4.0.

nginx配置:

root@ubuntu:/var/www# cat /etc/nginx/sites-available/default
server {
        listen 80;
        access_log /var/log/nginx/mono.log;
        error_log /var/log/nginx/mono.err.log;

        location / {
                root /var/www/;
                index index.html index.htm default.aspx Default.aspx;
                fastcgi_pass 127.0.0.1:9000;
                include /etc/nginx/fastcgi_params;
        }
}

运行 fastcgi-mono-server4:

root@ubuntu:/var/www# fastcgi-mono-server4 /applications="/:/var/www/" /socket=tcp:127.0.0.1:9000 -v
[2013-10-06 16:11:07.579396] Notice : Adding applications '/:/var/www/'...
[2013-10-06 16:11:07.607587] Notice : Registering application:
[2013-10-06 16:11:07.607832] Notice :     Host:          any
[2013-10-06 16:11:07.608034] Notice :     Port:          any
[2013-10-06 16:11:07.608230] Notice :     Virtual path:  /
[2013-10-06 16:11:07.608454] Notice :     Physical path: /var/www/

我只得到 404,我设置了权限 775 只是为了确保它不是 DLL 上的权限问题,不行。

我什至在我的 global.asax 中尝试过这个:

protected void Application_BeginRequest(object sender, EventArgs e)
{
    throw new Exception("test");
}

仍然只是 404s 而不是错误,所以 xsp 似乎甚至不承认这里有一个应用程序......在 Windows 机器上运行良好。我错过了什么吗?我也想在 Linux 上开发 Mono...

4

1 回答 1

3

你遇到了什么错误?

也许看看 Heroku .NET buildpack 是如何运行的:https ://github.com/friism/dev-heroku-buildpack-mono/blob/master/nginx/start#L8

有几篇包含详细信息的博客文章和自述文件:

您通常可以通过传递此参数来获取 fastcgi-mono-server 以输出额外的调试信息:/printlog=True

于 2013-10-08T04:26:45.547 回答