Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
fastcgi split path info для owncloud
- To: nginx-ru@xxxxxxxxx
- Subject: fastcgi split path info для owncloud
- From: "F0iL" <nginx-forum@xxxxxxxx>
- Date: Wed, 19 Oct 2011 01:32:37 -0400
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mickey.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=/OLnNcFPYIKA9RvYEGerKNCs1Zjkma92qI7lJD6fzj4=; b=WhMVm7vlsFv7QIYFpsvdg75HpO29QhOJMc/FTKsiRopr8akOPmq5RMLVqU6yZ6uaeJkwlk61MAzqpdm5O8x5x3kqj8HnQm4AIG+Hivmtxx9VwfZtqTEwd8t9jF7Bc5Rw;
всем доброго дня.
пытаюсь отконфигурить nginx для работы с
owncloud,
как написано на их сайте:
http://owncloud.org/install/advanced/ (во второй
половине страницы).
конфиг:
server {
listen 80;
server_name example.com www.example.com; #name server
root /var/www/ownclouddir;
client_max_body_size 1000M;
index index.php index.html index.htm;
dav_methods PUT DELETE MKCOL COPY MOVE;
create_full_put_path on;
dav_access user:rw group:rw all:r;
# Below there is only what you need to have php-fastcgi
location ~ \.php$ {
root /var/www/ownclouddir;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME
/var/www/ownclouddir/$fastcgi_script_name;
fastcgi_index index.php;
}
location / {
index index.php;
try_files $uri $uri/ @webdav;
}
location @webdav {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param SCRIPT_FILENAME
/var/www/ownclouddir/$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
}
}
проблема следущая:
для работы owncloud нужно, чтобы обращения
к урлу вида
http://xxxxxxx.pp.ru/owncloud/files/webdav.php/files/xxxxx
обрабатывались скриптом
http://xxxxxxx.pp.ru/owncloud/files/webdav.php
для этого, собственно, и используется
параметр fastcgi_split_path_info
однако по факту,
http://xxxxxxx.pp.ru/owncloud/files/webdav.php работает
отлично, а
http://xxxxxxx.pp.ru/owncloud/files/webdav.php/files/xxxxx -
выдает "No input file selected", то есть nginx
почему-то передает FastCGI-серверу путь до
скрипта целиком (как в урле), и тот,
естественно, не может этот файл найти.
в списке рассылки owncloud посоветовали
исправить регексп в выражении на
fastcgi_split_path_info ^(.+\.php)(/.*)$;
но результат тот же самый.
в апаче и lighttpd все работает отлично, но
хочется все-таки реализовать это
именно на nginx'е, чтобы ничего не
проксировать и не плодить сущностей.
в чем может быть дело, куда копать?
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,216890,216890#msg-216890
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|