Xampp와 php (1)

eg_kim·2024년 8월 27일

Xampp & php

목록 보기
1/2
post-thumbnail

Xampp와 php에 대해 알아보자!

리액트와 데이터베이스를 연결하기 전, 개발환경을 세팅하는 과정을 포스팅 했다.
데이터베이스에 대한 개념과 Xampp가 무엇인지, 설치 및 php 를 선언하는 기초에 대해 알아보았다.

데이터 베이스와의 연결

컴퓨터는 역할에 따라서 종류가 두 가지이다.
clien와 server
client는 server에 정보를 request(요청)하는데
이때 html을 요청할 때와 ssl(php,jsp,asp)일때는 다르다.
서버는 client의 요청에 응답하는데 이때 html을 요청하게 되면 html을 바로 response(응답)할 수 있다.
그런데 요청된 데이터가 ssl이면 경우가 달라진다.
서버 컴퓨터는 직접적으로 해석하는 능력이 없기 때문이다. 따라서 서버 컴퓨터 안에 해석기(parser)를 둔다.
서버가 php를 parser에 요청한다고 가정했을 때, 해석기는 코드 해석된 결과를 브라우저가 이해할 수 있는 언어인 html로 번역을 해주는 역할을 한다.

이때, 데이터베이스서버(DBMS) 안에는 DB가 여러개 들어있다. DB와의 연동은 parser들이 하는 것이다. 그래서 데이터베이스와 연동을 한다면 이러한 과정을 거쳐서 진행된다.


만약 로그인 페이지를 만든다고 가정했을 때

HTML : 무엇을 보여줄 것인가
CSS : 어떻게 보여줄 것인가
를 나타낸다.

사용자가 입력한 내용은 db에 저장되는데, 이떄 ssl이 DB에 내용들을 저장할 수 있도록 도와준다. 여기에서 내용이 규칙에 맞게 검사를 하는 역할을 javascript가 하는거다.

html - css - javascript - ssl - db 순서로 생각하면 된다.

백엔드 개발환경

백엔드 프로그래밍을 하기 위해서는 기본적으로 3가지 구성요소를 구축해야 한다.

1. 서버

  • windows server : asp
  • linux (apache,tomcat) : php / 여러가지 기능을 할 수 있지만 웹 서버 기능만 따로 추출(분리)을 해서 외부에서 사용할 수 있도록 만들어주는 도구들이 있는데 그 예시가 apache, tomcat이 있다. apache를 좀 더 심플하게 만든 것이 tomcat이다.
  • unix : jsp

2. 언어(Server sidel language: ssl)

  • asp
  • php
  • jsp

3. DATABASE

  • MS-SQL
  • My-SQL(Maria, Mongo...)
  • Oracle

만약 asp 언어로 개발을 해야한다면 서버가 windows server가 필요할 것이다. 그런데 개발 환경 세팅이 번거롭고 부담이 되어서 asp보다는 환경설정이 어렵지만 무료 운영체제인 linux를 사용하게 된다. (배포/재배포도 가능, 상업적 이용 불가) My-SQL도 마찬가지로 무료이다. (추후에 사용하기 쉽게 개선되었다.)
unix 개발환경도 마찬가지로 비용이 많이 들고 환경 세팅도 굉장히 어렵다. 큰 단위의 프로젝트를 개발할 수 있을 만큼 성능이 좋은 장점도 있긴 하다.

Virtual Machine / Ubuntu

개발 환경 준비하기

윈도우에서 php 환경 개발을 하려면 apache, php, My-SQL을 모두 다운로드 받아야했다.
그러나 php 개발자들이 개발을 할 때마다 다운로드를 받아야하는 번거로움이 있었다.
따라서 좀 더 쉽게 할 수 있는 방법을 만들어냈다.

  1. apm setup (현재는 더이상 업데이트가 되지 않음)
    2. XAMPP : apache/my-sql/php <- 다운로드의 번거로움을 줄여줄 수 있는 도구

portable == 다운로드 하지 않아도 사용할 수 있는 도구

portable 버전 사용할 때 주의사항: 압축을 해제하면 안쪽에 xampp 라는 폴더가 생성되는데 반드시 C드라이브의 바로 아래쪽으로 옮겨놓아야한다. 예를 들면 font,program files, windows 폴더와 같은 위치! 설치하는것이 아니기 때문에 수동으로 옮겨야 한다.

  1. 내 pc > c드라이브 > htdocs 폴더 안에서 hello.php 저장 후 vscode로 열기

"개발자를 확인할 수 없기 때문에 ‘xampp-osx-8.2.4-0-installer’을(를) 열 수 없습니다."
이런 오류가 떠서 구글링을 했는데 다들 다운로드 허용 체크박스가 있어서 클릭하면 허용이 된다던데 나는 버전이 안맞는지 해결되는 방법이 없었다.
그래서 gpt한테 sos... 디스크 추출을 한다음 ctrl+오른쪽 마우스 -> 열기 방법으로 파일을 열었다.

설치를 하게 되면

이런 창이 뜨게 되는데

여기에서 아팟치가 잘 실행되고 있는지 확인하고 다시 메인 화면으로 돌아가서 Go to Application을 클릭한다.

이때 시스템 기본 브라우저로 로컬호스트가 열리게 되는데 위에서 말했던 것처럼

윈도우의 portable 버전에서는 c드라이브에 직접 들어가서 옮기는 작업을 해야하지만 나는 직접 설치를 했기 때문에 옮기는 작업은 하지 않았고, 대신 xamppfiles 폴더에서 htdocs 폴더를 직접 찾았다.
그리고 htdocs 폴더를 vscode에서 직접 오픈했다.

폴더를 오픈하면 index.php 파일이 존재하고, 같은 루트 디렉토리에 hello.php 파일을 만들어줬다.

php 코드 작성하기

설치가 다 완료된 후에 php 파일을 하나 저장해서 열었다.
php 코드를 작성할 땐 html코드인지, 아닌지 구분짓기 위해 php 선언은 <?php ?> 이렇게 한다.

html파일은 더블클릭해도 실행이 되고, 브라우저엔 drag & drop 해도 실행이 된다.
그러나 php 파일은 이러한 방법을 이용하면 절대 파일이 열리지 않는다.

왜냐하면 php 파일은 서버를 통해서만 실행할 수 있기 때문이다.

phpinfo()는 php 환경을 확인할 수 있는 php 안에 내장된 함수이다.

내 컴퓨터의 주소는 로컬호스트라고 하는데 로컬 호스트에서 php 파일 이름을 직접 입력하면 내가 작성한 php 파일의 정보를 볼 수 있다.
현재 보여지는 내용은 내가 phpinfo()를 썼기 때문에 환경에 대한 정보를 읽을 수 있도록 출력된 것이다.

profile
오늘의 공부 기록📝

0개의 댓글