development

VS Code에서 php 개발 환경 구축

Sono Hacking Study 2024. 10. 4. 14:29

1. 웹 서버 기본 상식

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

각각을 설치하는 과정이 매우 번거로운데, XAMPP라는 통합 설치 도구를 사용하면 모든 과정이 간결하게 해결된다.

PHP는 웹 프로그래밍 언어, MySQL은 DB 시스템, 그리고 Apache는 HTTP 웹 서버이다.

 

1.1. Apache

Apache는 월드와이드 웹 서버용 소프트웨어이다. HTTP Apache라고도 불린다. 리눅스나 윈도우 등 거의 모든 운영체제에서 사용할 수 있으며 구축이 쉽고, 다양한 추가 기능을 가지고 있기 때문에 현대 가장 인기있는 웹 서버로 이용되고 있다.

 

 

1.2. 웹 서버란?

웹 서버란, 웹 브라우저와 같은 Client로 부터 HTTP 요청을 받아들이고, HTLM 문서와 같은 웹 페이지를 반환하는 컴퓨터 프로그램이다. 또는 앞에서 언급한 기능을 제공하는 프로그램을 실행하는 컴퓨터를 의미하기도 한다.

 

웹서버의 주요 기능은 웹 페이지를 Client에게 전달하는 것이다. 주로 HTML, CSS, JS, IMG 등 정적인 정보가 Client에게 전달된다. 주 기능은 콘텐츠를 제공하는 것이지만, Client로부터 콘텐츠를 전달 받는 것도 웹 서서의 기능이다. 대표적인 웹 서버로는 IIS, Apach, Nginx 등이 있다.

 

 웹 서버는 정적인 방식, 그리고 동적인 방식으로 나눌 수 있다.

  • 정적인 웹 서버: 단순히 HTML 문서만을 사용자에게 제공하기 때문에 Apache 웹 서버 하나면 된다.
  • 동적인 웹 서버: 동적인 웹 페이지는 사용자의 요구에 따라서 다양한 웹 페이지를 제공하고, 이를 구성하기 위해 php와 MySQL DB를 연계해서 사용해야한다.

-> HTML 코드 안에 php 언어가 포함되어 있고, 웹서버(Apache)에서 php코드를 해석해 동적 웹페이지 생성이 가능하다.


2. XAMPP를 이용하여 apache-php 서버 구축

( PHP 사용을 위한 VSCode 기본 설치 내용 (kincoding.com) ) 참고한 블로그이다.

나의 경우 XAMPP를 설치하고 실행했을 때, mysql과 관련된 오류 메시지가 떴다. xampp 설치 이전에 MySQL을 사용하고 있어서 그런듯 하다.

 

그래서 나는 원래 설치되어있었던 MySQL을 삭제하고 환경 구축을 시작했다.


3. 개발환경 구축

XAMPP에서 Apache 서버가 실행될 떄, 브라우저를 통해 PHP 파일을 실행하려면 PHP 파일이 htdocs 디렉토리 또는 그 하위 폴더에 저장되어 있어야 정상적으로 실행된다. XAMPP에서 제공하는 Apache 서버는 기본적으로 htdocs 디렉토리 내의 파일을 제공하는 웹 서버이다. 따라서 PHP 파일이 이 디렉토리 안에 있어야 웹 서버를 통해 실행될 수 있다.

 

3.1. 왜 php.exe가 있는 'C:\xampp\php'가 아닌 'C:\xampp\php'에서 작업할까?

php.exe는 PHP의 CLI로, 터미널 또는 커멘드라인에서 PHP 스크립트를 실행하는 데 사용된다. 반면 htdocs 폴더는 Apache 웹 서버가 PHP 파일을 웹 브라우저를 통해 실행할 수 있도록 설정된 디렉토리이다.

 

 

3.2. htdocs

htdocs는 Apache 웹 서버가 PHP 파일을 제공하는 웹 루트 디렉토리이다. 브라우저에서 PHP 파일을 실행할 때는 Apache가 해당 파일을 처리하고 결과를 웹 페이지로 출력한다. 이 방식은 HTTP 요청을 통해 php를 실행하고, 그 결과를 브라우저로 전달하는 방식이다.

 

 

예를 들어 내가 'practice.php'라는 코드를 작성했다고 생각해보자.

 

 

코드를 작성 했으면 XAMPP의 Apache를 활성화 해준다 (mysql을 사용했다면 이것도).

 

 

url 창에 'localhost'를 입력했을 떄, 이런 페이지가 뜨면 Apache 서버가 잘 구동되고 있다는 의미이다.

 

 

서버가 잘 실행되는 것을 확인했다면, /practice.php를 입력해보자. 그럼 내가 작성한 코드가 보일 것이다.


4. 다른 사람들과 협업하려면?

위에서 말했듯이 XAMPP에서 제공하는 Apache 서버는 기본적으로 htdocs 디렉토리 내의 파일을 제공하는 웹 서버이다. 따라서 협업을 할 때도, 협업하는 php 파일이 이 디렉토리 안에 있어야 웹 서버를 통해 실행 가능하다.

 

협업할 때는, Git과 같은 도구를 사용하여 각자 로컬 환경에서 작업하고, 이후 코드를 공유하는 것이 일반적이다. 간단하게 정리하자면

"각자 프로젝트를 로컬 환경에서 진행한다 -> git 같은 레포지토리를 통해 자신이 작업한 프로젝트를 업로드한다 -> 다른 팀원들이 올린 코드를 다운로드 받은 다음, 로컬 컴퓨터의 XAMPP로 옮겨 이후 작업을 시작한다"

..대충 이런 느낌으로 나는 이해했다.