Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-12-16 15:00:39

  tabi19 - Użytkownik

tabi19
Użytkownik
Skąd: Praszka (Opolskie)
Zarejestrowany: 2010-09-24

Apache i Nginx jako reverse proxy - problem z pobieraniem plików

Witam. Skonfigurowałem sobie wczoraj Nginx'a na moim serwerze jako Reverse Proxy dla apache'a, wygląda to tak:

apache działa na porcie 8080, a nginx na 80, apache obsługuje php i .htaccess a nginx treści statyczne oraz pliki exe, rar, zip itp. (pobieranie przez użytkowników).

I teraz mam 2 problemy/pytania z tym związane:

1. Gdy pobiera się jakiś plik z mojego serwisu, to nie widać wagi pliku, wcześniej, gdy działał sam apache działało to normalnie, więc nie jest to wina skryptu.. W czym problem ?

2. Przy 127 MB zatrzymało mi się pobieranie, choć plik waży 400 MB, nie zawsze się tak robi, ale dość często.

Moje configi nginx'a:

/etc/nginx/nginx.conf

user www-data;
worker_processes  2;
error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    access_log /var/log/nginx/access.log;
server_names_hash_bucket_size 64;
    sendfile        on;
    tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;
        gzip              on;
  gzip_comp_level   5;
  gzip_http_version 1.0;
  gzip_min_length   0;
  gzip_types        text/plain text/html text/css image/x-icon application/x-javascript application/octet-stream;
  gzip_vary         on;
  include /etc/nginx/conf.d/*.conf;
  include /etc/nginx/sites-enabled/*;

}[/quote]
/etc/nginx/conf.d/proxy.conf

proxy_redirect          off;
proxy_set_header        Host            $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size    20m;
client_body_buffer_size 128k;
client_header_buffer_size 64k;
proxy_connect_timeout   90;
proxy_send_timeout      90;
proxy_read_timeout      90;
proxy_buffer_size   16k;
proxy_buffers       32   16k;
proxy_busy_buffers_size 64k;[/quote]
/etc/nginx/sites-available/default -> jest podlinkowany do /etc/nginx/sites-enabled/default (ln -s).

server {
        listen       80;
        server_name  down4free.pl www.down4free.pl;

#        access_log  /var/www/Down4Free.pl/host.access.log  main;

        # Main location
        location / {
            proxy_pass         http://127.0.0.1:8080/;
            proxy_redirect     on;

            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

            client_max_body_size       10m;
            client_body_buffer_size    128k;

            proxy_connect_timeout      90;
            proxy_send_timeout         90;
            proxy_read_timeout         90;

            proxy_buffer_size          4k;
            proxy_buffers              4 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 64k;
        }

        # Static files location
        location ~* ^.+.(zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt)$ {
            root   /home/down4free/www/;
        }

    }[/quote]
Pliki nie do końca są na moim serwerze, tzn. mam skrypt, który działa na zasadzie stream to user, tzn. pobiera plik z np. rapidshare i jednocześnie, od razu wysyła go do usera, nie wykorzystując miejsca na dysku serwera, tylko transfer.

Proszę o pomoc.
Pozdrawiam

Ostatnio edytowany przez tabi19 (2010-12-16 15:01:29)

Offline

 

#2  2010-12-16 15:58:07

  Yampress - Imperator

Yampress
Imperator
Zarejestrowany: 2007-10-18

Re: Apache i Nginx jako reverse proxy - problem z pobieraniem plików

http://notatnik.mekk.waw.pl/archives/96-Konfigurujemy_VPS_-_czesc_8,_nginx_cd_proxy,_FastCGI,_PHP.html

Offline

 

#3  2010-12-16 22:06:16

  kuebk - Użytkownik

kuebk
Użytkownik
Zarejestrowany: 2010-11-27

Re: Apache i Nginx jako reverse proxy - problem z pobieraniem plików

Wydaje mi sie ze wlasnie dlatego ze streamujesz, przegladarka nie pokaze Ci ile zajmuje plik.

Offline

 

#4  2010-12-16 22:29:23

  tabi19 - Użytkownik

tabi19
Użytkownik
Skąd: Praszka (Opolskie)
Zarejestrowany: 2010-09-24

Re: Apache i Nginx jako reverse proxy - problem z pobieraniem plików

[quote=kuebk]Wydaje mi sie ze wlasnie dlatego ze streamujesz, przegladarka nie pokaze Ci ile zajmuje plik.[/quote]
To nie przez to, gdyż na apache'u wszystko było ok, więc wina musi leżeć po stronie nginx'a..

Offline

 

#5  2010-12-18 09:53:25

  tabi19 - Użytkownik

tabi19
Użytkownik
Skąd: Praszka (Opolskie)
Zarejestrowany: 2010-09-24

Re: Apache i Nginx jako reverse proxy - problem z pobieraniem plików

Problem leżał w php.ini:

memory_limit = 128M

zmieniłem na:

memory_limit = 500M

i teraz pliki luźno się pobierają do końca.
Pozdrawiam

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.012 seconds, 11 queries executed ]

Informacje debugowania

Time (s) Query
0.00012 SET CHARSET latin2
0.00005 SET NAMES latin2
0.00118 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.128.31.76' WHERE u.id=1
0.00058 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.128.31.76', 1732302850)
0.00048 SELECT * FROM punbb_online WHERE logged<1732302550
0.00059 SELECT topic_id FROM punbb_posts WHERE id=160825
0.00091 SELECT id FROM punbb_posts WHERE topic_id=17935 ORDER BY posted
0.00058 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=17935 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00078 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=17935 ORDER BY p.id LIMIT 0,25
0.00504 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=17935
Total query time: 0.01036 s