nginx более fastcgi-mono-сервер
Я искал пост, связанный с моей проблемой, но я не нашел. Я безнадежен, я следую руководству по установке и настройке 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-mono-server2 / application =prueba:/:/var/www/prueba/ /socket=tcp:127.0.0.1:9000
После я запускаю nginx:
/etc/init.d/nginx start
И когда я пытаюсь получить доступ к " http://localhost/" или " http://localhost/", покажи мне:
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
Я надеюсь, что вы можете мне помочь.
5 ответов
При запуске 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 mono.
например, вы указываете в конф. введите имя "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