Я искал сообщения, связанные с моей проблемой, но не нашел. Я безнадежен, я следую руководству по установке и настройке 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;
в вашем конфиге.
Вам необходимо сделать следующее:
например вы указываете в конф. файл с именем "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