Назад | Перейти на главную страницу

nginx более fastcgi-mono-server

Я искал сообщения, связанные с моей проблемой, но не нашел. Я безнадежен, я следую руководству по установке и настройке nginx с помощью fastcgi-mono-server ( http://www.mono-project.com/FastCGI_Nginx ), Я делаю все, как сказано в руководстве, но я не могу сделать так, чтобы nginx мог интерпретировать asp-страницу.

Мои страницы конфигурации в / etc / nginx / sites-available / default:

server{
    listen   80;
    server_name  prueba;
    access_log   /var/log/nginx/prueba.access.log;

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

Конфигурация / etc / nginx / fastcgi_params:

fastcgi_param   QUERY_STRING            $query_string;
fastcgi_param   REQUEST_METHOD          $request_method;
fastcgi_param   CONTENT_TYPE            $content_type;
fastcgi_param   CONTENT_LENGTH          $content_length;

fastcgi_param   SCRIPT_FILENAME         $request_filename;
fastcgi_param   SCRIPT_NAME             $fastcgi_script_name;
fastcgi_param   REQUEST_URI             $request_uri;
fastcgi_param   DOCUMENT_URI            $document_uri;
fastcgi_param   DOCUMENT_ROOT           $document_root;
fastcgi_param   SERVER_PROTOCOL         $server_protocol;

fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;

fastcgi_param   REMOTE_ADDR             $remote_addr;
fastcgi_param   REMOTE_PORT             $remote_port;
fastcgi_param   SERVER_ADDR             $server_addr;
fastcgi_param   SERVER_PORT             $server_port;
fastcgi_param   SERVER_NAME             $server_name;

fastcgi_param   HTTPS                   $https;

fastcgi_param  PATH_INFO          "";
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

fastcgi_param   REDIRECT_STATUS         200;

У меня есть страница Default.aspx в / var / www / prueba /

Сейчас бегу:

fastcgi-моно-сервер2 / приложения = прюба: /: / вар / www / прруба / /socket=tcp:127.0.0.1:9000

После запуска nginx:

/etc/init.d/nginx start

И когда я пытаюсь получить доступ к "http: // localhost /" или "http: // локальный: 80 /" Покажи мне:

No Application Found

Unable to find a matching application for rquest:

    Host localhost
    Port 80
    Request Path /Default.aspx
    Physical Path /var/www/prueba/Default.aspx

Я надеюсь, что вы можете мне помочь.

Я думаю, что при запуске fastcgi-mono-server должно получиться примерно так:

fastcgi-mono-server2 /applications=/prueba:/var/www/prueba/ /socket=tcp:127.0.0.1:9000

Я лично использую эту строку, чтобы запустить свою:

MONO_IOMAP=all  fastcgi-mono-server4 /socket=tcp:9000 /address=127.0.0.1 /applications=/:.,/dlr:/var/www/dotnet/dlr /logfile=/var/log/lighttpd/fastcgi.log &

Как видите, мой использует fastcgi-mono-server4. Вероятно, это будет работать так же.

Чтобы диагностировать такого рода ошибки, попробуйте добавить дополнительные параметры к запущенному fastcgi-mono-server:

/printlog=True /loglevel=All /verbose=True

Таким образом, вы увидите в консоли, для какого приложения был отправлен запрос.

Пример вывода для некорректно настроенного сервера:

[2014-09-30 02:47:45Z] Notice  Beginning to receive records on connection.
No application defined for: 127.0.0.1:80/default.aspx
[2014-09-30 02:47:45Z] Notice  Finished receiving records on connection.

Вы должны удалить или закомментировать fastcgi_index Default.aspx; в вашем конфиге.

Вам необходимо сделать следующее:

  • убедитесь, что вы указали одно и то же "имя_сервера" и порт прослушивания в вашем файле conf и на моно сервере fastcgi.

например вы указываете в конф. файл с именем "prueba" с портом 80 (по умолчанию), поэтому он должен быть таким же, как показано ниже.

в случае рамки 2:

fastcgi-mono-server2 /applications=prueba:/:/var/www/prueba/ /socket=tcp:127.0.0.1:9000

в случае каркаса 4:

fastcgi-mono-server4 /applications=prueba:/:/var/www/prueba/ /socket=tcp:127.0.0.1:9000

Добавить:

proxy_set_header Host $host;

в ваш nginx.conf