ImJustAskingDude 0 Zgłoś post Napisano Lipiec 8, 2015 Witam wszystkich, ma ktos moze doswiadczenie, z ustawianiem Nginx-a pod pobieranie plikow ? Mianowicie, chcialbym ominac PHP, by konfiguracja wygladala tak, bym mogl w PHP pisac logike, ale samym nginx-em serwowac pliki. ( osoba probujaca sciagnac plik najpierw przechodzila by przez jakas logike w PHP, a nastepnie dostawala by link, czy cos takiego, ale najlepiej by bylo, gdyby po tej operacji link juz nie byl dostepny, albo zeby ten link zawsze przechodzil przez PHP, ale plik dalej byl serwowany przez Nginx ) Dowiedzialem sie juz, ze wysylajac response przez PHP, caly proces obsluguje PHP ( -FPM ), ale nie mam zadnego dowodu, ze tak naprawde jest. Jedyna wskazowka na to, to statystyki w HTOP-ie. Niestety, na tym forum, ani ogolnie na internecie nie znalazlem specjalnie duzo informacji o tym. P.S. Wie ktos moze, jak duze sa roznice miedzy serwowaniem przez PHP-FPM, a Nginx-em ? Czy te roznice mozna jakos zminimalizowac ? Udostępnij ten post Link to postu Udostępnij na innych stronach
megi 358 Zgłoś post Napisano Lipiec 8, 2015 Zerknij na tohttp://wiki.nginx.org/XSendfile XSendfile (X-Accel-Redirect nazywa się to w Nginxie) właśnie do tego służy. Udostępnij ten post Link to postu Udostępnij na innych stronach
ImJustAskingDude 0 Zgłoś post Napisano Lipiec 8, 2015 (edytowany) No, i to jest konkretna odpowiedz, dzieki wielkie. Mam jednak kilka nastepnych pytan: 1. Jezeli moj plik jest kompletnie poza sciezka, do ktorej uzytkownik moze sie dostac, to czy musze ustawiac internal na tej sciezce ? ( powiedzmy, ze zapisuje pliki w katalogu /website/files, ale root w Nginx-ie mam ustawiony na /website/web, uzytkownik w tej sytuacji nie ma dostepu do files, prawda ? wiec jest od razu internal ? ) 2. Czyli prawie cala operacja tutaj zalezy od aplikacji ? Od tego, zeby ustawila odpowiednie headery ? ( Uzywam symfony 2.X i widze, ze od razu to dodaje, wiec chyba powinno od razu dzialac ? ) Dzieki. P.S. Zapisuje pliki tez za pomoca PHP, wiem ze to nie jest do konca optymalne, ale to w nginx-ie wyglada jeszcze gorzej niz download, przynajmniej z mojego doswiadczenia. Edytowano Lipiec 8, 2015 przez ImJustAskingDude (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Pan Kot 1535 Zgłoś post Napisano Lipiec 11, 2015 1. Możesz mieć różne URLe na różnych rootach. Np. zwykły root (/) na /website/web a np. /files na /website/files/. 2. Zależy jak chcesz żeby było. Logikę najłatwiej przerzucić na aplikację, a pliki na nginxa. XSendfile to tylko jeden ze sposobów, na które można zrealizować pobieranie plików przez coś zewnętrznego. Równie dobrze można kombinować naokoło, a nawet jakieś nginxowe proxy postawić... Pytanie tylko brzmi po co, skoro XSendfile jest najprostsze. Udostępnij ten post Link to postu Udostępnij na innych stronach