[신입5] PHP 공부 시작(WAMP, MAMP)

seochanh·2020년 12월 7일
0
post-thumbnail

PHP라는 것을 들어만 봤지 전혀 몰랐는데 일을 하다 보니 PHP를 마주치게 되었다.
PHP 부분은 주로 개발팀에서 작업해주기 때문에 사실 내가 몰라도 그만이긴 하지만 알아두면 좋을 것 같아서 공부해보기로 했다.


웹 서버와 WAMP, MAMP

웹 서버를 운영하기 위해서는 ApacheMySQL, 그리고 PHP가 필요하다고 한다.
하지만 이것들 모두를 설치하는 것은 꽤 까다로워서 이것들을 한 번에 설치하는 것을 도와주는 것이
WAMP와 MAMP이다.
첫 글자가 다른데 운영체제에 따라 나누어지는 것이다. 윈도우에서는 WAMP(Window+Apache HTTP Server+MySQL+PHP)와 맥에서는 MAMP(Mac)을 다운받으면 된다.

내가 듣는 생활코딩 PHP 강의에서는 Bitnami WAMP/MAMP를 다운받아 사용 중이다. Bitnami 외에도 다른 종류의 WAMP와 MAMP가 존재하고 각각 장단점이 있다고 한다.


웹 서버란

웹 서버는 우리가 인터넷에서 흔히 사용하는 웹 페이지가 들어 있는 파일을 사용자에게 제공해주는 서버 프로그램으로, 시스템 소프트웨어라 불린다.
인터넷 사용자는 웹 브라우저를 통해 여러 페이지를 사용하는데, 특정 페이지를 클릭할 경우 웹 서버로 HTTP 프로토콜을 이용해 페이지를 요청한다.
웹 서버는 클라이언트에게 HTML 문서로 된 페이지를 웹 브라우저로 전달한다.
즉, 웹 서버의 주된 역할은 사용자가 요청한 페이지를 전달하는 것이다.
여기서 웹 브라우저는 클라이언트가 되며, 웹 서버로부터 HTML 문서를 받아 사용자에게 보여줄 수 있는 중간자 역할을 수행한다.
웹 서버에는 아파치 웹 서버, NginX, IIS 등 여러 종류가 있지만...

출처: 아파치 웹 서버의 기본 상식 - OmeGa

Apache(아파치)란

Apache는 아파치 소프트웨어 재단에서 만든 가장 널리 사용되는 웹 서버다.

리눅스나 윈도우 등 거의 모든 운영체제에서 사용할 수 있으며 구축이 쉽고,
다양한 추가기능을 가지고 있기 때문에 현재 가장 인기 있는 웹 서버로 이용되고 있다.
하지만 요청당 스레드를 처리하는 구조인 아파치는 요청량이 많아지면 메모리 사용량이 많아져 성능이 떨어질 수 있다는 단점이 있다.

출처: 아파치 웹 서버의 기본 상식 - OmeGa

MySQL

MySQL은 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템이다.
아직 데이터베이스를 건드릴 일은 없을 것 같으니 대충만 알고 있어야겠다.


PHP

자바스크립트와 비슷한 부분이 꽤 있는 데다가 분량은 훨씬 적어서 자바스크립트보다 공부하기 훨씬 쉬울 것 같다.

PHP(PHP: Hypertext Preprocessor)는 C언어를 기반으로 만들어진 서버 측에서 실행되는 서버 사이드 스크립트 언어입니다.
PHP는 동적 웹 페이지를 쉽고 빠르게 만들 수 있도록 해주는 데 그 목적이 있습니다.
PHP로 작성된 코드를 HTML 코드 안에 추가하면, 웹 서버는 해당 PHP 코드를 해석하여 동적 웹 페이지를 생성합니다.

출처: PHP 소개 - TCP School

HTML과의 차이점은 HTML은 웹 브라우저에서 소스를 해석해 보여주지만 PHP는 서버에서 해석하여 HTML 코드로 만들어 브라우저에 전달하는 형식이다. PHPApache 웹 서버와 연동하여 동작하며 PHP.php 파일을 Apache는 HTML 파일을 처리한다.

출처: (APM) Apache, PHP, MySQL 이론 및 설치 (1) - NEO SLA


참고: WAMP란 - 퐁키치매실차,
아파치란? - 김성현,
wamp를 활용해 나만의 웹서버를 만들어보자 - 어깨깡패,
MySQL 소개 - TCP School

0개의 댓글