Apache란? (Nginx와 비교) | Apache 명령어 (설치, 접속방법 ..)

Benjamin·2022년 8월 1일
0

Server

목록 보기
1/5

웹 서버를 구축하기 위해서는 APM(Apache, PHP, MySQL)필요.

PHP = 웹 프로그래밍 언어
MySQL = 관계형 데이터베이스 시스템
Apache = HTTP 웹 서버


Apache?

월드와이드 웹 서버용 SW
HTTP 아파치 서버라고도 불리는 HTTP 웹서버
리눅스, 윈도우 등 거의 모든 운영체제에서 사용 가능하며, 구축이 쉽고, 다양한 기능이있어 인기있는 웹 서버로 이용되고 있다.
프로세스 중심 접근 방식으로 클라이언트 요청을 제공해주며, 클라이언트 요청을 처리하기 위해서 멀티 스레드 방식을 따른다.
자체적 동적 컨텐츠 처리

단점

  • 멀티 스레드 방식을 사용해 비동기적 처리가 어렵기 때문에 웹 트래픽이 많아질 경우 여러 요청을 동시에 처리할 수 없다.
  • 무겁고, 서비스 거부 공격 도구 취약점이 발견되었다 -> 프로그래밍 능력이 능숙한 사람들이나 대형사이트 운영자는 Nginx, llS를 주로 사용한다.

사용하기 적합한 상황

  • 웹 서버에 다양한 모듈 동작이 필요한 경우

결론

안전성, 확장성, 호환성...

Nginx?

최신 웹 요구를 충족하도록 설계된 오픈 소스 웹 서버
효율성에 중점을 두며, 단일 스레드 방식 사용
이벤트 중심 접근 방식으로 클라이언트 요청 처리
비동기적 처리가 유연해 제한된 자원으로도 여러 요청을 동시에 효율적으로 처리 가능
단일 스레드를 통해 여러 연결 처리 가능
최소한 자원으로도 웹 서버의 아키텍처를 개선하기 위한 독립적 HTTP서버로 배치 가능

단점

  • 동적인 컨텐츠는 처리할 수 없음 -> 이를 처리해주기 위한 외부 프로세서로 요청을 전달해 렌더링 된 컨텐츠를 전송받을 때까지 기다려 주어야함. 따라서 프로세스 속도 저하 발생 가능.

사용하기 적합한 상황

  • 트래픽이 많은 웹 사이트인 경우

결론

성능 우세

+Nginx, Apache 두 웹서버를 함께 사용할 경우 = Nginx를 Apache앞에 리버스 프록시 서버로 배치 가능


Apache관련 명령어 (Ubuntu)

서버 설치

# apt-get install apache2

서비스 상태 확인

설치가 끝나면 현재 아파치 서버가 돌아가고 있는지 확인해야 함
service라는 명령어를 가지고 확인
# service apache2 statue

  • active(running) : 정상적으로 작동중
  • Inactive(dead) : 서버가 동작하지 않는다는 메시지 -> 서비스 시작해주어야함

서비스 시작

# service apache2 start

서비스 중지

# service apache2 stop

서비스 재시작(2가지)

# service apache2 restart
apache의 모든 프로세스를 종료시키고, 재시작하는 stop + start와 동일
완전한 종료는 되지만, 서비스 끊김이 발생함

# service apache2 graceful
restart와의 차이 : graceful은 접속된 connection을 유지함
운영중인 서버에 재시작 작업을 할 때에는 이 명령어를 사용하는것이 좋음

웹 서버 접속 방법

웹 서버에 접속하기 위해서는 IP주소가 필요 : 자신이 설정해 둔 IP주소를 입력하면 됨.
혹시나 인터넷이 되지 않는 환경이거나 IP주소를 입력하지 않았다면, localhost라는 자신의 루프백 주소를 사용하면 됨

http://[IP주소]

혹은

http://localhost

인터넷 브라우저에 위와 같이 입력하면 웹 서버(아파치 서버)에 접속할 수 있다.
혹은 terminal에 # [실행할 웹] http://[IP주소]를 명령해주면, 실행된다.

+IP 확인법

ubuntu의 terminal에 ifconfig를 입력하여 ip를 확인할 수 있다
IPv4주소는 inet으로 표시된다.


위와같은 화면이 표시되면 성공!
이 화면은 처음 아파치 서버를 설치하면 나오는 화면이므로 기본으로 설정된 화면이다.

이 화면을 바꾸기 위해서는 index.html을 바꾸어주면 되는데, 이 파일은 cd /var/www/html로 들어가서 확인할 수 있다.

0개의 댓글