최근 서버에 php5.6 환경을 구성할 예정인데, 성능이나 보안 측면에서 어느 웹서버가 더 어울리는지 조언을 구하고 싶습니다. 감사해요!
최근 서버에 php5.6 환경을 구성할 예정인데, 성능이나 보안 측면에서 어떤 웹서버가 더 어울리는지 조언을 구하고 싶습니다. 감사해요!
높은 동시성과 고성능을 위해서는 nginx php가 적합합니다.
안정성과 모듈, 재작성을 원한다면 apache php가 더 적합합니다.
nginx가 대세입니다
마지막으로 Windows 환경에서는 PHP를 실행하는 것이 전혀 권장되지 않습니다. Linux가 첫 번째 선택입니다.
IIS PHP 추천
(윈도우서버 학습비는 사실 좀 높네요. 그냥 원격으로 접속해서 데스크탑 버전으로 사용하신다면 제 말은 무시해주세요)
Windows용 IIS를 사용하여 자신만의 제품을 획득하는 것을 권장합니다
서버를 구축하려면 리소스를 절약하고 성능과 동시성이 뛰어난 Linux와 PHP, nginx를 사용해야 한다는 뜻을 이해합니다.
Windows 7에서 IIS와 Apache 성능 테스트 비교
환경(64비트 Win7): IIS7 PHP5.4(NTS 비스레드 안전 버전) 대 Apache2.4(32비트) PHP5.4
정적 파일 처리:
ab -k -c100 -n10000 http://127.0.0.1: 8080/info.htm # Apache RPS 1847
결론: APR 런타임 및 WinNT 멀티스레딩을 기반으로 하는 Apache는 정적 리소스 처리에 있어서 IIS보다 나쁘지 않습니다.
PHP 파일 처리:
ab -k -c100 -n10000 http://127.0.0.1: 8080/bs.php # Apache RPS 1071
결론: Apache는 스레드 MPM을 사용하므로 스레드 안전 버전의 PHP를 사용해야 하며 스레드 안전 검사에는 특정 오버헤드가 있으므로 성능이 IIS PHP보다 낮습니다. -CGI
익숙한 솔루션을 사용하는 것이 좋습니다. 개인적으로 Apache에 더 익숙합니다. 구성은 Linux와 크게 다르지 않습니다. 물론, Rewrite 데이터도 찾기 쉽습니다. Linux를 사용하는 경우 Nginx/PHP-FPM 조합 사용을 고려해 보세요.
Windows Server를 버리는 것이 좋습니다. 리소스를 너무 많이 소모하고 안전하지 않기 때문에 보안이 뛰어난 Linux를 사용하는 것이 올바른 솔루션입니다!