Skocz do zawartości
wansee

Apache + php - jak się to teraz "robi" najlepiej?

Polecane posty

Witam, kilka lat nie używałem w ogóle apache ani również nie siedziałem w temacie serwerów. Wcześniej używałem nginx + php-fpm i byłem zadowolony więc i potrzeby za bardzo nie było. Teraz nadszedł jednak moment, że muszę na serwerze skonfigurować apache z php oraz mariadb i phpmyadminem. Jaki sposób na php jest aktualnie najbardziej optymalny i efektywny? Wiem, że można również skonfigurować php-fpm dla apache 2.4 ale z tego co czytałem jest to dosyć problematyczne i nie wiem czy to jest w ogóle odpowiedni wybór. Proszę o wasze opinie - jak wy to robicie? Szczegóły doczytam sobie sam, chodzi mi tylko o wskazówkę, zarys itp ;)

 

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

"Najlepiej" to się robi pozbywając się apache'a. Nginx + php-fpm w wersji 7 przebija wszystko.

 

Zapytaj sam siebie z jakiego powodu potrzebujesz apache'a, bo jeśli możesz ten powód ominąć i wrócić do nginx + php-fpm to będziesz szczęśliwszym człowiekiem. Jeśli się "nie da" to korzystanie z apache'a w należyty sposób i tak kończy się na postawieniu przed nim czy to nginxa, varnisha czy coś innego, więc sobie dokładasz roboty.

 

Apache + php-fpm mija się już całkowicie z celem, tego się po prostu robić nie opłaca. nginx + php-fpm, albo <coś> + apache, gdzie <coś> to np. nginx czy varnish.

 

Oczywiście mówię tutaj o próbie zrobienia tego "dobrze", bo zrobienie tego "jakkolwiek" ogranicza się do apt-get install apache2 php.

Edytowano przez Archi (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Hmm chciałem postawić apache z dwóch powodów - 1) mogę mieć problem z ustawieniem rewrites w przypadku "przyjaznych linków" 2) chciałbym się trochę w apaczu podszkolić na żywym przykładzie. Chodzi o dosyć nietypowy skrypt w php, więc nie ma nigdzie gotowych configów i ogólnie musiałbym się trochę nagłowić z tymi przekierowaniami, co oczywiście jest do zrobienia, ale jednak perspektywa taka, że stawiam apache i wszystko działa jest kusząca.

 

Szczerze trochę zaskoczyły mnie wasze odpowiedzi, myślałem, że wraz z apache 2.4 sytuacja z wydajnością tego serwera znacznie się poprawiła.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Spoofy

Apache 2.4 jest o wiele szybszy niż 2.2, ale prawda jest taka że Nginx ma lepszą kontrolę takowego ruchu i dlatego warto go stosować jako proxy, ot co :)

 

Jak dla mnie setup apache 2.4 + php-fpm + nginx jest idealny :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Sprawdzałem połączenie nginx+apache na żyjącym serwerze (z kilkoma tysiącami aktywnych domen) i niczym szczególnym mnie to nie ujęło - ani strony nie ładowały się szybciej, ani serwer nie odetchnął (właściwie to load wzrósł o ok. 10%), ani też zabezpieczenia (pod kątem limitowania ilości połączeń) nie były lepsze. Podobnie zresztą było z varnish (szczególnie na forum DA ludzie piszą, że nie widzą żadnej różnicy). Być może SAM nginx jest wydajniejszy niż apache, ale znowu apache też nie jest aż tak zły i przede wszystkim więcej ludzi go wymaga przez mod_rewrite.

 

Optymalne połączenie to Apache 2.4 + mod_php + OPcache + mod_ruid2 + PHP 7. Super szybkie i bezpieczne :)

Edytowano przez is_wm (zobacz historię edycji)
  • Upvote 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys
Apache + php-fpm mija się już całkowicie z celem, tego się po prostu robić nie opłaca.

 

Nie przesadzaj, jak ktoś nie przerzuca terabajtów statyki to nawet różnicy nie poczuje ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie przesadzaj, jak ktoś nie przerzuca terabajtów statyki to nawet różnicy nie poczuje ;)

 

Zakładając apache'a 2.4 to może i nie, ale wciąż nie widzę zbytnio sensu pakowania się w apache'a chcąc włożyć mu php-fpm. Dla samego .htaccess takie katorgi się mijają z celem, w szczególności że technologia ruszyła do przodu i już nawet darmowe konwertery robią naprawdę dobrą robotę, a raczej nie znajdziesz mi żadnego innego powodu "za" apache'm, bo cała reszta wyginęła lata temu.

 

Ja dzisiaj każdego usera apache'a uznaję za osobę, która albo zatrzymała się z technologią na 8 lat wstecz, albo jest zbyt leniwa/nieudolna żeby poprawnie skonfigurować nginxa, i nic tego poglądu nie zmieni ;).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys

Nie rozumiesz, Apache jest tylko po to by nie grzebać w konfiguracjach przy dodawaniu głupiej reguły rewrite.

Niestety ale programiści PHP nie mają z reguły ani dostępu, ani wiedzy by wprowadzać takie zmiany.

 

Apache 2.4 na event + PHP FPM to wydajna konstrukcja i nie poczujesz różnicy jeżeli nie zapchasz go ogromem statyki.

Wiadomo, że większe projekty w produkcji z reguły przechodzą na Nginx i tam już administratorzy opiekują się regułkami etc.

Ale jak ktoś dalej chce używać Apache, to zawsze może wyrzucić na przód Varnisha, który zdejmie z jego barków trochę pracy.

Choć ten Varnish przy większym ruchu i tak wchodzi nawet na konfiguracje z Nginx żeby odciążyć backend.

 

ps. osobiście mi się wydaje, że konfiguracja Nginx jest tak naprawdę prostsza od Apache ;)

 

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Spoofy

Nie rozumiesz, Apache jest tylko po to by nie grzebać w konfiguracjach przy dodawaniu głupiej reguły rewrite.

Niestety ale programiści PHP nie mają z reguły ani dostępu, ani wiedzy by wprowadzać takie zmiany.

 

Apache 2.4 na event + PHP FPM to wydajna konstrukcja i nie poczujesz różnicy jeżeli nie zapchasz go ogromem statyki.

Wiadomo, że większe projekty w produkcji z reguły przechodzą na Nginx i tam już administratorzy opiekują się regułkami etc.

Ale jak ktoś dalej chce używać Apache, to zawsze może wyrzucić na przód Varnisha, który zdejmie z jego barków trochę pracy.

Choć ten Varnish przy większym ruchu i tak wchodzi nawet na konfiguracje z Nginx żeby odciążyć backend.

 

ps. osobiście mi się wydaje, że konfiguracja Nginx jest tak naprawdę prostsza od Apache ;)

 

 

 

Dokładnie :)

 

Archi - nie wygrasz z tym... nie chcemy tutaj prowadzić wojny - Nginx vs Apache .... do tego można jeszcze dołożyć mitycznego LiteSpeed'a Enteprise i openlitespeed'a czy lighttpd albo cheeroke (czy jak to tam się zwało :P ) - używam wszystkich (prócz lightttpd i cheeroke :P ) ... i każdy ma swoje plusy i minusy...

 

Tu nie tylko chodzi o rewrite... to jest XX wieczne podejście, bo kiedyś skrypty jeszcze nie miały kontrolerów url - dzisiaj jest inaczej i rewrite przestaje być tak ważny jak kiedyś.

 

OCZYWIŚCIE że Nginx + php-fpm + ew. modsec i pagespeed to brzytwa, ale tylko pod konkretne środowiska.

Mając Apache'a masz stabilność kosztem kilku % wydajności (stabilność konfiguracji - plików conf) - przynajmniej tak ja to postrzegam. Oczywiście że dla mnie też Nginx jest szybszy w konfiguracji - dopisujesz do jednego pliku co chcesz i masz, ale Apache ma to tak rozpisane nie bez powodu - jak masz templatkę (np. tak jak plesk czy da) to pod to (IMHO!) prościej zamienić kilka rzeczy i wyczytać co gdzie jest. Apache 2.4 z fpm'em też potrafi być brzytwą, może nie tak ostrą jak Nginx ale na pewno przyjemną w administracji jak masz n stron ;)

 

Summa summarum z mojego piątkowego bełkotu - IMHO Nginx pod konkretne środowisko, Apache do wszystkiego - that's all ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie zgodzę się, nginxowe rewrite'y czyli bloki location mam dostępne dla siebie i userów z poziomu mojego panelu ISPConfig, zarządzanie nim jest strasznie łatwe i przyjemne (żeby zmienić php-fpm w tryb ondemand nawet nie muszę schodzić do konsoli). Nawet jak user coś popsuje to ISP jest dostatecznie sprytny, żeby zauważyć, że nginx się nie reloaduje, i robi rollback do poprzedniej wersji. IMHO to bardziej podejście + lenistwo / nieznajomość technologii aniżeli jakaś "stabilność" czy "brak różnicy" ;).

 

Ale każdy używa czego chce.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×