웹 해킹 1일차

Luslec·2023년 1월 13일
0

webhacking.kr 문제를 해결하기 위해 html과 php를 공부하기로 마음먹었다.

Php를 공부하기 위한 책은 "php + MySQL 입문"이라는 책이다.

중고나 새책을 사서 공부하려고 했지만 학교 전자도서관에 있을 줄이야!!(bb)

그럼 시작해보겠다.

php : 웹 서버에서 데이터를 처리하는 데 사용되는 웹 프로그래밍 언어 중 하나

* 책의 예제들을 로컬 컴퓨터에서 실행하기 위해 XAMPP 라는 프로그램을 설치하기로 한다. 이때 로컬컴퓨터는 내 컴퓨터를 의미하는 듯.

일반적으로 php 코드는 html 과 하나의 웹 페이지에서 같이 쓰인다.

막간 지식 !
웹 브라우징을 하다보면 주소창에 주의요함이라는 것이 뜨는 경우가 있는데 이는 오류가 아니라 구글에서 https 통신규약을 지양하고 있기 때문이다. https 통신규약은 브라우저와 웹 서버 주소 간 정보를 암호화해 http보다 사용자 프라이버시와 보안을 강화하는 기술이라고 생각하면 된다!!

비쥬얼 스튜디오에 html과 php를 같이 사용하고 나중에 웹페이지에서 소스를 보면 Php 코드가 html로 변환되어 있는것을 알 수 있다. 이는 php해석기에 의한 것이다. 책의 예제를 모두 적을 수 없으니 간단하게 설명만 아래에 적겠다
html은 일반 파이썬이나 c언어처럼 반복문을 사용할 수 없나보다 그래서 php를 html과 함께 쓰는 것이고 php에서 반복처리를 해주면 이를 html로 여러번 적는 그런 방식이라고 생각하자

예를 들어 ,
php로 (안녕하세요 *5)를 했다고 하면 이는 html 에서
안녕하세요 ```
<br안녀하세요br 뭐 이런식으로 html 로 써진다는 뜻
'Velog 에서 실제 html로 처리되어서 어떻게 글로 써야할지 모르겠다 일단 대충 써놨으니깐 눈치껏 알아보자'

추가) php 해석기는 php코드를 해석하는 프로그램을 뜻한다. 웹 서버에 존재하는 php 해석기는 'php parser' 또는 'interpreter'라고 부른다
Php 해석기는 php코드를 해석하여 html 코드로 변환한다. html로 변환된 웹 페이지는 인터넷을 통하여 사용자 컴퓨터의 웹 브라우저에 전달된다. 웹 브라우저는 웹 페이지를 분석하고 실행하여 브라우저 화면에 텍스트, 이미지, 동영상 등의 콘텐츠를 보여준다.

1 웹서버와 클라이언트

클라이언트, 즉 사용자가 웹브라우저를 통해 웹 서버에 웹 페이지를 요청하면 웹 서버에서는 해당 웹페이지를 클라이언트에게 전달한다. 이때 서버에서 받은 웹 페이지는 브라우저가 분석하여 텍스트, 이미지, 동영상 등을 화면에 보여준다 .

이때 웹 서버에서는
웹 사이트 데이터 보유 : html, css, js, php + 텍스트, 이미지, 동영상 파일

웹 서비스 프로그램 탑재 : apache, php해석기, mysql

클라이언트 측에 있는 사용자는 웹 브라우저 주소 창에 서버의 url주소를 입력함으로써 서버에서 제공하는 웹 서비스를 이용할 수 있다.

웹 서버는 서비스를 제공하는 컴퓨터를 의미한다. 또 다른 말로 웹 서버는 http 통신 규약에 의해 클라이언트의 웹 브라우저에 정보를 제공하는 원격에 위치한 컴퓨터 하트웨어(또는 소프트웨어)를 의미한다.
이메일 서비스를 제공하는 서버 컴퓨터를 메일 서버, 도메인 서비스를 제공하는 서버를 DNS(Domain Name System)서버, 온라인 게임 서비스를 제공하는 서버를 게임 서버라고 부른다.

2 웹 서버 구축 프로그램

서버 컴퓨터에 탑재되어 클라이언트에 웹 서비스를 제공하는 데 사용되는 소프트웨어를 의미한다. php 환경에서는 apache(아파치), php 해석기, mysql이 웹 서버를 구축하는 프로그램으로 가장 널리 사용된다.

apache는 웹 서비스를 제공하는 데 사용되는 인기있는 웹 서버 프로그램 중의 하나다. apache는 안정성과 성능이 우수하여 유닉스, 윈도우, 리눅스 등 거의 모든 운영ㅇ체제에서 운용된다.

php 해석기는 프로그래머가 Php 문법에 따라 작성한 프로그램 소스(이때 프로그램 소스는 내가 쓴 코드라고 생각하면 될 것 같다.)를 문법적으로 해석하는 프로그램이다. php해석기는 서버 컴퓨터에 탑재되어 php 소스코드를 해석한 다음 이를 apache에 html 형태로 제공한다. apache는 해당 html 문서를 http 통신 규약에 따라 클라이언트의 컴퓨터에 전송된다.

mysql은 apache, php 와 함께 패키지 형태로 쓰이는 데이터베이스 관리 프로그램 중의 하나이다. mysql은 무료이면서도 성능이 우수해 전 세계적으로 널리 사용된다.

profile
할 수 있겠다.

0개의 댓글