# Ð’ð¾ð¿ñ€ð¾ñ ð¿ð¾ ð»ð¸ð¼ð¸ñ‚ð¸ñ€ð¾ð²ð°ð½ð¸ñž ñ ðºð¾ñ€ð¾ññ‚ð¸

**URL:** <https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688>\
**Category:** NGINX\
**Created:** [May 16, 2010, 12:42pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688 "2010-05-16T12:42:12Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [May 16, 2010, 12:42pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688/1 "2010-05-16T12:42:12Z")

</div>

Ð—Ð´Ñ€Ð°Ð²ÑÑ‚Ð²ÑƒÐ¹Ñ‚Ðµ.  
Ð£Ð²Ð¸Ð´ÐµÐ»  
[http://sysoev.ru/nginx/docs/http/ngx\_http\_core\_module.html#limit\_rate](http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#limit_rate)

location /flv/ {  
flv;  
limit\_rate\_after 500k;  
limit\_rate 50k;  
}

Ð¯ Ñ‚Ð°Ðº Ð¿Ð¾Ð½ÑÐ», Ñ‡Ñ‚Ð¾ ÑÑ‚Ð¾ Ð»Ð¸Ð¼Ð¸Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ðµ ÑÐºÐ¾Ñ€Ð¾ÑÑ‚Ð¸ Ð½Ð° Ñ„Ð°Ð¹Ð»Ñ‹, Ñ€Ð°ÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ñ‹Ðµ Ð²  
Ð¿Ð°Ð¿ÐºÐµ  
/flv/ ?  
Ð¯ ÑÐ´ÐµÐ»Ð°Ð» ÑÐ»ÐµÐ´ÑƒÑŽÑ‰ÐµÐµ:

location /lim/  
{  
lim;  
limit\_rate 4k;  
}

* * *

location / {  
root C:/1/;  
index index.html index.htm;  
}

ÐŸÑ€Ð¸ ÑÑ‚Ð¾Ð¼ Ð² Ð»Ð¾Ð³Ð°Ñ… Ð¾ÑˆÐ¸Ð±ÐºÐ° Ð¿Ñ€Ð¾ lim. Ð£Ð±Ñ€Ð°Ð» lim;.  
Ð¡Ð´ÐµÐ»Ð°Ð» Ð¿Ð¾Ñ‚Ð¾Ð¼ Ñ‚Ð°Ðº:  
location /lim/  
{  
limit\_rate 4k;  
}

nginx Ð·Ð°Ð¿ÑƒÑÑ‚Ð¸Ð»ÑÑ ÑƒÑÐ¿ÐµÑˆÐ½Ð¾.  
ÐÐ¾ Ñ‚ÑƒÑ‚ Ð½Ð°Ñ‡Ð°Ð»Ð¸ÑÑŒ ÑÑ‚Ñ€Ð°Ð½Ð½Ð¾ÑÑ‚Ð¸:  
Ð’ C:/1/ ÐµÑÑ‚ÑŒ Ð´Ð²Ðµ Ð¿Ð°Ð¿ÐºÐ¸ - lim Ð¸ nelim. ÐÐ° lim Ñ Ð¿Ñ€Ð¾Ð¿Ð¸ÑÐ°Ð» Ð¿Ñ€Ð°Ð²Ð¸Ð»Ð¾, Ð´Ð¾Ð»Ð¶ÐµÐ½  
Ñ€ÐµÐ·Ð°Ñ‚ÑŒ ÑÐºÐ¾Ñ€Ð¾ÑÑ‚ÑŒ, Ð½Ð° nelim Ð½ÐµÑ‚ Ð¿Ñ€Ð°Ð²Ð¸Ð»Ð°, Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð½Ð° Ð±ÐµÐ·Ð»Ð¸Ð¼Ð¸Ñ‚Ð½Ð¾Ð¹ ÑÐºÐ¾Ñ€Ð¾ÑÑ‚Ð¸  
Ð¾Ñ‚Ð´Ð°Ð²Ð°Ñ‚ÑŒ.  
ÐÐ¾ ÑÑ‚Ñ€Ð°Ð½Ð½Ð¾ - Ð¸Ð· Ð¿Ð°Ð¿ÐºÐ¸ [http://192.168.1.4/nelim/](http://192.168.1.4/nelim/) Ñ„Ð°Ð¹Ð»Ñ‹ Ð¾Ñ‚Ð´Ð°ÑŽÑ‚ÑÑ, Ð½Ðµ  
Ð»Ð¸Ð¼Ð¸Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¾.  
Ð Ð²Ð¾Ñ‚ Ð¿Ð¾ Ð°Ð´Ñ€ÐµÑÑƒ [http://192.168.1.4/lim/](http://192.168.1.4/lim/) Ð²Ñ‹Ð´Ð°Ñ‘Ñ‚ÑÑ Ð½Ð° Ð»ÑŽÐ±Ð¾Ð¹ Ñ„Ð°Ð¹Ð» Ð¾ÑˆÐ¸Ð±ÐºÐ°:

404 Not Found  
nginx/0.8.36

Ð§Ñ‚Ð¾ Ñ Ð½Ðµ Ñ‚Ð°Ðº ÑÐ´ÐµÐ»Ð°Ð» Ð¸ Ð¿Ð¾Ñ‡ÐµÐ¼Ñƒ Ð²Ñ‹Ð´Ð°Ñ‘Ñ‚ÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ° 404 Ð¿Ñ€Ð¸ Ð¿Ñ€Ð¾Ð¿Ð¸ÑÐ°Ð½Ð½Ð¾Ð¼ Ð¿Ñ€Ð°Ð²Ð¸Ð»Ðµ  
Ð»Ð¸Ð¼Ð¸Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑÐºÐ¾Ñ€Ð¾ÑÑ‚Ð¸?

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [May 16, 2010, 12:49pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688/2 "2010-05-16T12:49:13Z")

</div>

äÏÂÒÙÊ ÄÅÎØ!

2010/5/16 áÒÔÕÒ èÕÓÎÕÔÄÉÎÏ× [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> úÄÒÁ×ÓÔ×ÕÊÔÅ.  
> õ×ÉÄÅÌ [Модуль ngx\_http\_core\_module](http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#limit_rate)  
> location /flv/ {  
> flv;  
> flv ÔÕÔ ×ËÌÀÞÁÅÔ ÏÂÒÁÂÏÔËÕ ÚÁÐÒÏÓÁ flv-ÍÏÄÕÌÅÍ - ÐÏÄÄÅÒÖËÕ ×ÅÂÓÅÒ×ÅÒÏÍ  
> ÁÒÇÕÍÅÎÔÁ ?start=xx ÐÒÉ ÏÔÄÁÞÅ ËÏÎÔÅÎÔÁ.

> ñ ÓÄÅÌÁÌ ÓÌÅÄÕÀÝÅÅ:  
> location /lim/  
> {  
> šlim;  
> ôÁË ÞÔÏ lim ÔÕÔ ÎÅ ÎÕÖÅÎ.

> óÄÅÌÁÌ ÐÏÔÏÍ ÔÁË:  
> location /lim/  
> š{  
> limit\_rate 4k;  
> úÄÅÓØ ÎÕÖÎÏ ÄÏÂÁ×ÉÔØ:  
> root C:/1;  
> ôÁË ËÁË ÷Ù ÕËÁÚÁÌÉ root ÔÏÌØËÏ ÄÌÑ ÚÁÐÒÏÓÏ×, ÐÏÐÁÄÁÀÝÉÈ × location /,  
> ÎÏ ÎÅ ÄÌÑ ÚÁÐÒÏÓÏ×, ÐÏÐÁÄÁÀÝÉÈ × location /lim.  
> íÏÖÎÏ ÐÏÐÒÏÂÏ×ÁÔØ ÐÒÏÓÔÏ ×ÙÎÅÓÔÉ ÄÉÒÅËÔÉ×Õ root ÎÁ ÕÒÏ×ÅÎØ server{}.

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [May 16, 2010, 1:09pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688/3 "2010-05-16T13:09:08Z")

</div>

Ð¡Ð¿Ð°ÑÐ¸Ð±Ð¾, Ð¿Ñ€ÐµÐºÑ€Ð°ÑÐ½Ð¾!  
ÐÐ¾ Ñ‚ÐµÐ¿ÐµÑ€ÑŒ Ñ Ð² ÑÑ‚ÑƒÐ¿Ð¾Ñ€Ðµ:  
ÐŸÐ¾Ð»ÑƒÑ‡Ð°ÐµÑ‚ÑÑ, Ñ‡Ñ‚Ð¾:  
/lim/Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° - ÑÐºÐ¾Ñ€Ð¾ÑÑ‚ÑŒ Ñ€ÐµÐ¶ÐµÑ‚ÑÑ  
/nelim/Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° - ÑÐºÐ¾Ñ€Ð¾ÑÑ‚ÑŒ Ð½Ðµ Ñ€ÐµÐ¶ÐµÑ‚ÑÑ

Ð’Ð¾Ð¿Ñ€Ð¾Ñ - ÐºÐ°Ðº Ð¼Ð½Ðµ ÑÐ´ÐµÐ»Ð°Ñ‚ÑŒ Ð´Ð¸Ð½Ð°Ð¼Ð¸Ñ‡ÐµÑÐºÐ¸Ðµ ÑÑÑ‹Ð»ÐºÐ¸? Ð’ÐµÐ´ÑŒ ÑŽÐ·Ð²ÐµÑ€ÑŒ, Ð¾Ð´Ð¸Ð½ Ñ€Ð°Ð·  
ÑƒÐ²Ð¸Ð´ÐµÐ²,  
Ñ‡Ñ‚Ð¾ ÐµÑÐ»Ð¸ ÐºÐ°Ñ‡Ð°Ñ‚ÑŒ Ð½Ðµ Ñ Ð°Ð´Ñ€ÐµÑÐ° /lim/Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°, Ð° Ñ /nelim/Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°, Ñ‚Ð¾  
ÐºÐ°Ð¶Ð´Ñ‹Ð¹  
Ñ€Ð°Ð· Ð±ÑƒÐ´ÐµÑ‚ Ð¿Ñ€Ð¾ÑÑ‚Ð¾ Ñ€ÑƒÐºÐ°Ð¼Ð¸ Ð¸ÑÐ¿Ñ€Ð°Ð²Ð»ÑÑ‚ÑŒ Ð°Ð´Ñ€ÐµÑÐ½ÑƒÑŽ ÑÑ‚Ñ€Ð¾ÐºÑƒ Ð½Ð° /nelim/Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð¸  
ÐºÐ°Ñ‡Ð°Ñ‚ÑŒ Ñ /nelim/Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°.  
ÐšÐ°Ðº Ð´Ð¸Ð½Ð°Ð¼Ð¸ÐºÑƒ-Ñ‚Ð¾ ÑÐ´ÐµÐ»Ð°Ñ‚ÑŒ? Ð’ ÑÐ²Ð¾Ñ‘ Ð²Ñ€ÐµÐ¼Ñ Ñ Ð¿Ð¸ÑÐ°Ð» Ð·Ð°Ð´Ð°Ñ‡ÐºÑƒ, Ð·Ð°Ñ‚Ð¾Ñ‡ÐµÐ½Ð½ÑƒÑŽ Ð¿Ð¾Ð´  
ÑÑ‚Ñƒ  
Ð·Ð°Ð´Ð°Ñ‡Ñƒ - Ð¿Ñ€Ð¸ Ð·Ð°Ð¿Ñ€Ð¾ÑÐµ Ñ„Ð°Ð¹Ð»Ð° Ñ ÑÐ°Ð¹Ñ‚Ð° ÑŽÐ·Ð²ÐµÑ€ÑŽ Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð»Ð°ÑÑŒ ÑÑÑ‹Ð»ÐºÐ°  
/userid/filehash, Ð° Ð² Ð‘Ð” MySQL Ð·Ð°Ð½Ð¾ÑÐ¸Ð»Ð°ÑÑŒ Ð·Ð°Ð¿Ð¸ÑÑŒ Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°Ð¼Ð¸ userid,  
filehash, path to file (Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÑÐµÑ‚ÑÑ ÑÑ€ÐµÐ´ÑÑ‚Ð²Ð°Ð¼Ð¸ PHP Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ filehash)  
Ð¸  
downloadspeed. ÐŸÑ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð° Ð¿Ñ€Ð¸ Ð·Ð°Ð¿Ñ€Ð¾ÑÐµ Ð±Ñ€Ð°Ð»Ð° userid Ð¸ filehash Ñ GET URL Ð¸  
ÑÐ¼Ð¾Ñ‚Ñ€ÐµÐ»Ð° Ð¿Ð¾ Ð‘Ð”, ÐµÑÑ‚ÑŒ Ð»Ð¸ Ð·Ð°Ð¿Ð¸ÑÑŒ Ð² Ð½ÐµÐ¹ Ñ Ñ‚Ð°ÐºÐ¸Ð¼ userid Ð¸ filehash ,ÐµÑÐ»Ð¸  
ÐµÑÑ‚ÑŒ,  
Ñ‚Ð¾ Ð¾Ñ‚Ð´Ð°Ð²Ð°Ð»Ð° Ñ„Ð°Ð¹Ð» Ð½Ð° ÑÐºÐ¾Ñ€Ð¾ÑÑ‚Ð¸, Ð²Ð·ÑÑ‚Ð¾Ð¹ Ð¸Ð· Ð·Ð°Ð¿Ð¸ÑÐ¸ Ð² Ð‘Ð”.

Ð¢Ð°Ðº Ð²Ð¾Ñ‚, ÐºÐ°Ðº-Ð½Ð¸Ð±ÑƒÐ´ÑŒ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ Ð»Ð¸ Ð½Ð° nginx Ð¿Ð¾ÑÑ‚Ñ€Ð¾Ð¸Ñ‚ÑŒ Ñ‚Ð°ÐºÐ¾Ð¹ Ð°Ð½Ð°Ð»Ð¾Ð³?  
Ð•ÑÐ»Ð¸ Ð´Ð°, Ñ‚Ð¾ ÐºÐ°Ðº?

16 Ð¼Ð°Ñ 2010 Ð³. 15:48 Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒ Boris D. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
Ð½Ð°Ð¿Ð¸ÑÐ°Ð»:

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [May 16, 2010, 1:22pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688/4 "2010-05-16T13:22:00Z")

</div>

2010/5/16 áÒÔÕÒ èÕÓÎÕÔÄÉÎÏ× [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> óÐÁÓÉÂÏ, ÐÒÅËÒÁÓÎÏ!  
> îÏ ÔÅÐÅÒØ Ñ × ÓÔÕÐÏÒÅ:  
> ðÏÌÕÞÁÅÔÓÑ, ÞÔÏ:  
> /lim/ÉÍÑ ÆÁÊÌÁ - ÓËÏÒÏÓÔØ ÒÅÖÅÔÓÑ  
> /nelim/ÉÍÑ ÆÁÊÌÁ - ÓËÏÒÏÓÔØ ÎÅ ÒÅÖÅÔÓÑ
> 
> ÷ÏÐÒÏÓ - ËÁË ÍÎÅ ÓÄÅÌÁÔØ ÄÉÎÁÍÉÞÅÓËÉÅ ÓÓÙÌËÉ? ÷ÅÄØ ÀÚ×ÅÒØ, ÏÄÉÎ ÒÁÚ Õ×ÉÄÅ×,  
> ÞÔÏ ÅÓÌÉ ËÁÞÁÔØ ÎÅ Ó ÁÄÒÅÓÁš/lim/ÉÍÑ ÆÁÊÌÁ, Á Ó /nelim/ÉÍÑ ÆÁÊÌÁ, ÔÏ ËÁÖÄÙÊ  
> ÒÁÚ ÂÕÄÅÔ ÐÒÏÓÔÏ ÒÕËÁÍÉ ÉÓÐÒÁ×ÌÑÔØ ÁÄÒÅÓÎÕÀ ÓÔÒÏËÕ ÎÁ /nelim/ÉÍÑ ÆÁÊÌÁ É  
> ËÁÞÁÔØ Óš/nelim/ÉÍÑ ÆÁÊÌÁ.  
> ëÁË Ñ ÐÏÎÑÌ, Õ ÷ÁÓ × /lim É /nelim ÈÒÁÎÑÔÓÑ ÒÁÚÎÙÅ ÆÁÊÌÙ ÉÚ c:/1/lim É  
> c:/1/nelim. åÓÌÉ ÈÏÞÅÔÓÑ ÐÏ ÏÂÏÉÍ ÁÄÒÅÓÁÍ ÏÔÄÁ×ÁÔØ ÆÁÊÌÙ ÉÚ c:/, ÔÏ  
> ÎÁÄÏ ÎÁÐÉÓÁÔØ ×ÏÔ ÔÁË:  
> location /lim/  
> {  
> limit\_rate …;  
> alias c:/1/;  
> }  
> location /nelim/  
> {  
> alias c:/1/;  
> }

> ëÁË ÄÉÎÁÍÉËÕ-ÔÏ ÓÄÅÌÁÔØ? ÷ Ó×Ï£ ×ÒÅÍÑ Ñ ÐÉÓÁÌ ÚÁÄÁÞËÕ, ÚÁÔÏÞÅÎÎÕÀ ÐÏÄ ÜÔÕ  
> ÚÁÄÁÞÕ - ÐÒÉ ÚÁÐÒÏÓÅ ÆÁÊÌÁ Ó ÓÁÊÔÁ ÀÚ×ÅÒÀ ÐÅÒÅÄÁ×ÁÌÁÓØ ÓÓÙÌËÁ  
> /userid/filehash, Á × âä MySQL ÚÁÎÏÓÉÌÁÓØ ÚÁÐÉÓØ Ó ÐÁÒÁÍÅÔÒÁÍÉ userid,  
> filehash, path to file (ÏÐÒÅÄÅÌÑÅÔÓÑ ÓÒÅÄÓÔ×ÁÍÉ PHP ÎÁ ÏÓÎÏ×Å filehash) É  
> downloadspeed. ðÒÏÇÒÁÍÍÁ ÐÒÉ ÚÁÐÒÏÓÅ ÂÒÁÌÁ userid É filehash Ó GET URL É  
> ÓÍÏÔÒÅÌÁ ÐÏ âä, ÅÓÔØ ÌÉ ÚÁÐÉÓØ × ÎÅÊ Ó ÔÁËÉÍšuserid É filehash ,ÅÓÌÉ ÅÓÔØ,  
> ÔÏ ÏÔÄÁ×ÁÌÁ ÆÁÊÌ ÎÁ ÓËÏÒÏÓÔÉ, ×ÚÑÔÏÊ ÉÚ ÚÁÐÉÓÉ × âä.  
> ôÁË ×ÏÔ, ËÁË-ÎÉÂÕÄØ ×ÏÚÍÏÖÎÏ ÌÉ ÎÁ nginx ÐÏÓÔÒÏÉÔØ ÔÁËÏÊ ÁÎÁÌÏÇ?  
> ôÏ, ÞÔÏ ÷Ù ÈÏÔÉÔÅ ÓÄÅÌÁÔØ ÍÏÖÎÏ ÓÄÅÌÁÔØ, ÉÓÐÏÌØÚÕÑ ÐÒÏËÓÉÒÏ×ÁÎÉÅ ÎÁ  
> http ÉÌÉ fastcgi-ÂÅËÅÎÄ.  
> õ ÷ÁÓ ÄÏÌÖÅÎ ÂÙÔØ location ÄÌÑ ÆÁÊÌÏ×:  
> location /files/  
> {  
> alias c:/1/;  
> internal;  
> }  
> äÉÒÅËÔÉ×Á internal ÎÅ ÐÏÚ×ÏÌÉÔ ÐÏÌØÚÏ×ÁÔÅÌÑÍ ÐÏÌÕÞÉÔØ ÄÏÓÔÕÐ Ë ÆÁÊÌÁÍ ÎÁÐÒÑÍÕÀ.  
> é location ÄÌÑ ÂÅËÅÎÄÁ:  
> location /get\_file/  
> {  
> proxy\_pass/fastcgi\_pass …;  
> }  
> îÁ ÂÅËÅÎÄÅ ÄÏÌÖÅÎ ×ÉÓÅÔØ ÐÒÏÓÔÅÎØËÉÊ ÓËÒÉÐÔ - ÐÒÉ ÐÒÉÎÑÔÉÉ ÚÁÐÒÏÓÁ  
> ×ÉÄÁ /get\_file/?user=userid&file=filehash ÌÅÚÔØ × ÂÁÚÕ É:

1. ïÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
Content-Disposition: attachment; filename=ÉÍÑ\_ÆÁÊÌÁ
2. ïÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
X-Accel-Redirect: /files/ÐÕÔØ\_ÄÏ\_ÆÁÊÌ\_ÏÔÎÏÓÉÔÅÌØÎÏ\_c:/1/
3. åÓÌÉ ÎÕÖÎÏ ÏÇÒÁÎÉÞÉÔØ ÓËÏÒÏÓÔØ, ÏÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
X-Accel-Limit-Rate: ÏÇÒÁÎÉÞÅÎÉÅ\_ÓËÏÒÏÓÔÉ\_×_ÂÁÊÔÁÈ_×\_ÓÅËÕÎÄÕ.

á ×ÏÏÂÝÅ - ÉÓÐÏÌØÚÏ×ÁÎÉÅ nginx/windows ÄÌÑ ÓÅÒØÅÚÎÙÈ ÃÅÌÅÊ, ËÒÏÍÅ  
ÔÅÓÔÉÒÏ×ÁÎÉÑ ÐÒÉ ÒÁÚÒÁÂÏÔËÅ, ÎÁÓÔÏÑÔÅÌØÎÏ ÎÅ ÒÅËÏÍÅÎÄÕÅÔÓÑ.

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [May 22, 2010, 3:49pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688/5 "2010-05-22T15:49:18Z")

</div>

úÄÒÁ×ÓÔ×ÕÊÔÅ.

ëÁË ÷Ù É ÐÒÅÄÌÁÇÁÌÉ, Ñ × ËÏÎÆÉÇÅ ÎÇÉÎËÓÁ ×Î£Ó ÉÚÍÅÎÅÎÉÑ:

server {  
listen 80;  
server\_name localhost;  
limit\_conn one 1;

```
    location /get_file/
    {
      proxy_pass http://localhost:8070/qwe/headertest;
    }

    location /files/
    {
     root (ÔÕÔ ÐÒÏÂÏ×ÁÌ ÓÔÁ×ÉÔØ É alias) c:/1;
     internal;
    }

location /lim/
{
root C:/1;
      limit_rate 4k;
      limit_conn one 5;
}

óÅÒ×ÌÅÔÏÍ ÏÔÄÁÀ ÓÌÅÄÕÀÝÅÅ:

        response.setHeader("Content-Disposition: attachment", 

```

“1.rar”);  
response.setHeader(“X-Accel-Redirect:”, “/files/lim/1.rar”);  
response.setHeader(“X-Accel-Limit-Rate:”, “155”);

ðÒÉ ÜÔÏÍ × ÌÏÇ ÐÉÛÅÔÓÑ ÏÛÉÂËÁ  
2010/05/22 19:43:49 [crit] 692#732: \*14 CreateFile()  
“C:\1\nginx-0.8.36/html: /files/lim/1.rar” failed (123: óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ  
× ÉÍÅÎÉ ÆÁÊÌÁ, ÉÍÅÎÉ ÐÁÐËÉ ÉÌÉ ÍÅÔËÅ ÔÏÍÁ), client: 192.168.1.2, server: localhost, request:  
“GET /get\_file/ HTTP/1.1”, upstream:  
“[http://127.0.0.1:8070/qwe/headertest](http://127.0.0.1:8070/qwe/headertest)”, host: “192.168.1.4”  
2010/05/22 19:43:49 [error] 692#732: \*16 CreateFile() “C:/1/favicon.ico”  
failed (2: îÅ ÕÄÁÅÔÓÑ ÎÁÊÔÉ ÕËÁÚÁÎÎÙÊ ÆÁÊÌ), client: 192.168.1.2, server: localhost,  
request: “GET /favicon.ico HTTP/1.1”, host: “192.168.1.4”, referrer:  
“[http://192.168.1.4/get\_file/](http://192.168.1.4/get_file/)”

ðÏÐÒÏÂÏ×ÁÌ × ÓÅÒ×ÌÅÔÅ ÐÏÍÅÎÑÔØ ÎÁ  
response.setHeader(“X-Accel-Redirect:”, “C:/1/lim/1.rar”);  
÷ ÌÏÇÅ ÓÔÁÌÏ ÏÔÏÂÒÁÖÁÔÔØÓÑ ÓÌÅÄÕÀÝÅÅ:

2010/05/22 19:38:44 [crit] 692#732: \*11 CreateFile()  
“C:\1\nginx-0.8.36/html: C:/1/lim/1.rar” failed (123: óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ × ÉÍÅÎÉ ÆÁÊÌÁ,  
ÉÍÅÎÉ ÐÁÐËÉ ÉÌÉ ÍÅÔËÅ ÔÏÍÁ), client: 192.168.1.2, server: localhost, request: “GET  
/get\_file/ HTTP/1.1”, upstream: “[http://127.0.0.1:8070/qwe/headertest](http://127.0.0.1:8070/qwe/headertest)”,  
host: “192.168.1.4”  
2010/05/22 19:38:44 [error] 692#732: \*13 CreateFile() “C:/1/favicon.ico”  
failed (2: îÅ ÕÄÁÅÔÓÑ ÎÁÊÔÉ ÕËÁÚÁÎÎÙÊ ÆÁÊÌ), client: 192.168.1.2, server: localhost,  
request: “GET /favicon.ico HTTP/1.1”, host: “192.168.1.4”, referrer:  
“[http://192.168.1.4/get\_file/](http://192.168.1.4/get_file/)”

þÔÏ ÎÅ ÔÁË,ÐÏÞÅÍÕ nginx ÐÙÔÁÅÔÓÑ ÎÁÊÔÉ ÆÁÊÌ × C:\1\nginx-0.8.36/html  
ÈÏÔÑ Ñ ÅÍÕ ÕËÁÚÁÌ  
location /files/  
{  
root (ÔÕÔ ÐÒÏÂÏ×ÁÌ ÓÔÁ×ÉÔØ É alias) c:/1;  
internal;  
}

ðÒÏÛÕ ËÏÎÓÕÌØÔÁÃÉÉ…

÷Ù ÐÉÓÁÌÉ 16 ÍÁÑ 2010 Ç., 16:21:01:

> location /lim/  
> {  
> limit\_rate …;  
> alias c:/1/;  
> }  
> location /nelim/  
> {  
> alias c:/1/;  
> }

> ```
> alias c:/1/;
> 
> ```
> 
> Content-Disposition: attachment; filename=ÉÍÑ\_ÆÁÊÌÁ  
> 2) ïÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
> X-Accel-Redirect: /files/ÐÕÔØ\_ÄÏ\_ÆÁÊÌ\_ÏÔÎÏÓÉÔÅÌØÎÏ\_c:/1/  
> 3) åÓÌÉ ÎÕÖÎÏ ÏÇÒÁÎÉÞÉÔØ ÓËÏÒÏÓÔØ, ÏÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
> X-Accel-Limit-Rate: ÏÇÒÁÎÉÞÅÎÉÅ\_ÓËÏÒÏÓÔÉ\_×_ÂÁÊÔÁÈ_×\_ÓÅËÕÎÄÕ.

> á ×ÏÏÂÝÅ - ÉÓÐÏÌØÚÏ×ÁÎÉÅ nginx/windows ÄÌÑ ÓÅÒØÅÚÎÙÈ ÃÅÌÅÊ, ËÒÏÍÅ  
> ÔÅÓÔÉÒÏ×ÁÎÉÑ ÐÒÉ ÒÁÚÒÁÂÏÔËÅ, ÎÁÓÔÏÑÔÅÌØÎÏ ÎÅ ÒÅËÏÍÅÎÄÕÅÔÓÑ.

–  
ó Õ×ÁÖÅÎÉÅÍ,  
Forpdfsending [mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [June 19, 2010, 2:36pm UTC](https://www.ruby-forum.com/t/d-d-d-n-d-n-d-d-d-d-d-d-n-d-n-d-d-d-d-d-nz-n-d-d-n-d-n-n-d/188688/6 "2010-06-19T14:36:41Z")

</div>

úÄÒÁ×ÓÔ×ÕÊÔÅ.

÷ÏÐÒÏÓ ×ÏÚÎÉË, Õ×ÁÖÁÅÍÙÅ ÒÁÚÒÁÂÏÔÞÉËÉ É ÐÏÌØÚÏ×ÁÔÅÌÉ nginx.  
óÄÅÌÁÌ ×Ó£ ËÁË ÏÐÉÓÁÎÏ ÎÉÖÅ.  
é nginx ×ÏÚ×ÒÁÝÁÅÔ ÏÛÉÂËÕ:  
2010/06/19 18:23:06 [crit] 3480#1928: \*31 CreateFile()  
“d:/Distributivs/ü×ÅÒÅÓÔ.exe” failed (1113: óÉÍ×ÏÌ àÎÉËÏÄÁ ÎÅ ÉÍÅÅÔ ÓÏÐÏÓÔÁ×ÌÅÎÉÑ × ËÏÎÅÞÎÏÊ  
ÍÎÏÇÏÂÁÊÔÏ×ÏÊ ËÏÄÏ×ÏÊ ÓÔÒÁÎÉÃÅ), client: 52.215.77.77, server: [zxcvb.no-ip.org](http://zxcvb.no-ip.org),  
request: “GET /get\_file/?filehash=2b161da577fc7ba4d330283a4d748230  
HTTP/1.1”, upstream:  
“[http://127.0.0.1:80/get\_file/?filehash=2b161da577fc7ba4d330283a4d748230](http://127.0.0.1:80/get_file/?filehash=2b161da577fc7ba4d330283a4d748230)”,  
host: “zxcvb.no-ip.org:8080”  
2010/06/19 18:23:14 [crit] 3480#1928: \*33 CreateFile()  
“d:/Distributivs/ü×ÅÒÅÓÔ.exe” failed (1113: óÉÍ×ÏÌ àÎÉËÏÄÁ ÎÅ ÉÍÅÅÔ ÓÏÐÏÓÔÁ×ÌÅÎÉÑ × ËÏÎÅÞÎÏÊ  
ÍÎÏÇÏÂÁÊÔÏ×ÏÊ ËÏÄÏ×ÏÊ ÓÔÒÁÎÉÃÅ), client: 52.215.77.77, server: [zxcvb.no-ip.org](http://zxcvb.no-ip.org),  
request: “GET /get\_file/?filehash=2b161da577fc7ba4d330283a4d748230  
HTTP/1.1”, upstream:  
“[http://127.0.0.1:80/get\_file/?filehash=2b161da577fc7ba4d330283a4d748230](http://127.0.0.1:80/get_file/?filehash=2b161da577fc7ba4d330283a4d748230)”,  
host: “zxcvb.no-ip.org:8080”

ðÒÏÛÕ ÓÏÄÅÊÓÔ×ÉÑ × ÉÓÐÒÁ×ÌÅÎÉÉ ÄÁÎÎÏÊ ÏÛÉÂËÉ.  
éÍÅÎÁ ÆÁÊÌÏ× - ÒÕÓÓËÉÅ. îÅÕÖÅÌÉ nginx ÎÅ ÐÒÅÄÎÁÚÎÁÞÅÎ ÄÌÑ ÒÁÂÏÔÙ Ó  
ÆÁÊÌÁÍÉ, ÎÁÚ×ÁÎÉÑ ËÏÔÏÒÙÈ - ÒÕÓÓËÉÅ? åÓÌÉ ÄÁ, ÔÏ ËÁË ÉÓÐÒÁ×ÉÔØ ÜÔÕ  
ÏÛÉÂËÕ.  
P.S. èÉÄÅÒÙ ÏÔÄÁÀÔÓÑ ÎÏÒÍÁÌØÎÏ.

÷Ù ÐÉÓÁÌÉ 16 ÍÁÑ 2010 Ç., 16:21:01:

> location /lim/  
> {  
> limit\_rate …;  
> alias c:/1/;  
> }  
> location /nelim/  
> {  
> alias c:/1/;  
> }

> ```
> alias c:/1/;
> 
> ```
> 
> Content-Disposition: attachment; filename=ÉÍÑ\_ÆÁÊÌÁ  
> 2) ïÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
> X-Accel-Redirect: /files/ÐÕÔØ\_ÄÏ\_ÆÁÊÌ\_ÏÔÎÏÓÉÔÅÌØÎÏ\_c:/1/  
> 3) åÓÌÉ ÎÕÖÎÏ ÏÇÒÁÎÉÞÉÔØ ÓËÏÒÏÓÔØ, ÏÔÄÁ×ÁÔØ ÚÁÇÏÌÏ×ÏË:  
> X-Accel-Limit-Rate: ÏÇÒÁÎÉÞÅÎÉÅ\_ÓËÏÒÏÓÔÉ\_×_ÂÁÊÔÁÈ_×\_ÓÅËÕÎÄÕ.

> á ×ÏÏÂÝÅ - ÉÓÐÏÌØÚÏ×ÁÎÉÅ nginx/windows ÄÌÑ ÓÅÒØÅÚÎÙÈ ÃÅÌÅÊ, ËÒÏÍÅ  
> ÔÅÓÔÉÒÏ×ÁÎÉÑ ÐÒÉ ÒÁÚÒÁÂÏÔËÅ, ÎÁÓÔÏÑÔÅÌØÎÏ ÎÅ ÒÅËÏÍÅÎÄÕÅÔÓÑ.

–  
ó Õ×ÁÖÅÎÉÅÍ,  
Forpdfsending [mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)
