Re: UserDir и отдача файлов напрямую

Victor Sudakov vas at mpeks.tomsk.su
Wed Apr 3 08:14:05 UTC 2013


Anton Yuzhaninov wrote:
> > Чтобы отдавать
> > видеоролики без участия апача, написал в конфиге сервера:
> >
> > location ~* ^.+\.(avi|flv)$ {
> >   root /home/www/data ;
> >   expires 30d;
> > }
> >
> > Файлы по ссылке вида http://site.ru/some/dir/file.flv  теперь отдаются напрямую.
> >
> > Но проблема в том, что в backend-e включены UserDir, и надо чтобы
> > http://site.ru/~pupkin/some/dir/file.flv  тоже работало. Как бы это
> > покрасивее сконфигурить?
> 
> Проще всего проксировать http://site.ru/~ на апач:
> 
> location ~* ^.+\.(avi|flv)$ {
>   root /home/www/data ;
>   expires 30d;
> }
> 
> location ^~ /~ {
>     proxy_pass ...;
> }

Я пока так сделал:


location / {
		proxy_pass	http://127.0.0.1:8418;
		proxy_set_header	Host	$host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ /~ {
		proxy_pass	http://127.0.0.1:8418;
		proxy_set_header	Host	$host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* \.(avi|flv|mov|mp3|mpg|pdf|pps|ppt|psd|rar|rtf|swf|wmv|zip|doc)$ {
	root /home/www/data ;
	expires 30d;
	}

> 
> Но можно заморочаться и сэмулировать поведение UserDir средствами
> nginx, хотя это будет сложнее.

Хотелось бы, чтобы .flv и прочее из юзерских каталогов тоже
отдавалось бы nginx-ом напрямую.

Можно взять за основу http://wiki.nginx.org/UserDir и творчески
переработать, но вдруг у кого уже готовое есть и поделиться не жалко.


-- 
Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
sip:sudakov at sibptus.tomsk.ru



Подробная информация о списке рассылки nginx-ru