본문 바로가기

분류 전체보기

(63)
웹 개발 공부 일기장 2 - 과제 (로그인 페이지 With DB) 이번엔 저번 시간에 못한 과제 3을 해보겠습니다. 3. 1주차에 만든 로그인 페이지를 DB와 연동하기 기본적인 login.php 의 html 코드는 변함이 없고 php 코드를 따로 login_func.php 파일에 저장하여 post 요청 시 require_once 함수로 불러왔습니다. 그럼 login_func.php 코드를 보겠습니다. database.php와 session.php 를 가져왔습니다. database 파일을 전 시간에 설명하였지만 간단하게 다시 설명하면 localhost에 있는 데이터베이스에 연결하는 코드가 database에 있어 우리는 $db_conn 변수로 데이터베이스에 연결할 수 있습니다. 제가 로그인 페이지를 데이터베이스와 연결하여 구현한 방법은?? 1. 아이디와 비밀번호를 입력받은..
웹 개발 공부 일기장 2 - 과제 (회원가입 페이지) 저번 시간에 있었던 과제에 대해 알아보겠습니다. 1. 학생이름과 점수가 들어있는 DB에서, GET 방식으로 name을 건네주면 점수를 출력하는 페이지 만들기 이제 코드가 많아지고 파일이 복잡해지기 때문에 vi 로 계속 만들기 힘들 것 같아 vs code 로 만든 후 sftp를 사용하여 서버와 파일을 공유하였습니다. - ftp 는 파일 전송 프로토콜로 서로 다른 시스템에서 파일을 전송할 수 있습니다. (저의 컴퓨터와 가상 머신에 올린 서버 사이에서 공유) 먼저 form 태그를 사용하여 get방식으로 요청을 보내는 파일을 만들었습니다. 이제 입력란에 이름을 입력하면!! name에 입력한 이름 값이 들어가 해당페이지를 다시 요청하게 됩니다. 이제 php 코드 부분을 보시면 먼저 데이터베이스 연결을 해줍니다. ..
웹 개발 공부 일기장 2 - 1 (DBMS) 1주차에서 웹 서버와 WAS에 대해서 공부하였습니다. 웹 서버 구조는 위 그림과 같이 웹 서버 - WAS - DB 로 구성되어 있습니다. 웹 서버와 WAS가 하는 역할은 저번 시간에 알아봤습니다. 그럼 DB는 무슨 역할을 할까요?? DB는 DATABASE의 줄임말로 말 그대로 데이터를 저장하는 공간입니다. 그렇기 때문에 우리가 웹 브라우저를 통해 웹 서버에 파일을 요청하며 만약 파일이 동적페이지로 처리가 필요한 파일일 경우 우리가 요청할 때 같이 전송한 데이터를 통해 WAS에서 해당 데이터에 관한 데이터를 DB에서 가져와 결과 페이지를 만드는 식으로 동작합니다. 위의 그림과 같이 보면 이해가 빠를 것 같습니다. 1. 브라우저를 통해 파일 요청 2. 웹 서버에서 동적 처리가 필요한 경우 WAS에게 전달 3..
웹 개발 공부 일기장 1-과제 (로그인 페이지) 저번 시간 마지막에 있던 과제를 해보자!!! 1. 로그인 페이지 만들기 - 간단하게 아이디는 admin, 비밀번호는 admin1234로 로그인 시 로그인 되었다는 출력만 가능하게 만들기. 2. 로그인 페이지 꾸미기 - CSS를 어떻게 사용하며, CSS 파일과 php 파일을 어떻게 연결하는 지 이해할 수 있을 정도로 만들기. CSS CSS 파일과 HTML 파일을 연결하고 싶을 경우 link 태그의 href속성을 통해 해당 파일 경로를 적어주면 스타일이 적용됩니다. 파일이 아니더라도 위에서 hr 태그처럼 원하는 태그에 style 속성으로 바로 스타일을 적용 가능 bosy와 같이 그냥 태그만 적을 경우 해당 태그에 대해 스타일을 적용시킵니다. #login과 같이 #id명을 적을 경우 해당 id Element에..
웹 개발 공부 일기장 1-2 (WAS) 저번에 웹 서버는 파일을 저장하고 있다가 우리가 파일을 요청하면 전달해준다고 배웠습니다. 하지만, 파일의 기본 틀이 똑같지만 어느 한 부분만 다를 경우 이 모든 파일을 저장할 경우 비효율적이며 큰 저장공간을 차지할 것입니다. . 예시로 우리가 네이버 홈페이지를 방문 후 로그인을 한다고 해보자! 로그인을 할 경우 기본적인 검색 창, 광고, 뉴스... 등 다른 부분은 모두 같지만 로그인한 사람마다 로그인한 부분의 이름이 다릅니다. (얼마나 많은 사람들이 네이버에 로그인을 할까요...?!!) 물론, 이름 부분만 바꿔서 여러 페이지를 저장한 후 각 로그인한 사람에게 페이지를 줄 수 있습니다. 하지만, 이럴 경우 로그인한 사람만큼의 파일이 필요하게 되며 사람이 많아질 수록 엄청난 양의 파일을 저장해야 됩니다. 이..
웹 개발 공부 일기장 1-1 (웹 서버) 웹 해킹 공부하기전 웹 서버가 무엇인지 먼저 알아야 한다. 웹 서버란? 웹 브라우저와 같은 클라이언트로부터 http요청을 받아들이고 요청한 파일을 전송해주는 서비스 프로그램입니다. 여기서, 중요한 것은 파일은 전송해준다는 것이다. 그림과 같이 단순히 페이지(파일)을 요청하고 요청한 파일을 전달 받을 뿐입니다. 그럼 웹 서버는 파일을 전송해주는 프로그램이면 파일을 요청하는 방법은 무엇일까? 웹 브라우저를 통해 파일을 요청한다. (URL을 입력하여 어떤 서버에 어떤 파일을 받을 지 정한다.) - 우리가 웹 브라우저에 원하는 사이트의 주소를 입력하여 사이트에 방문하는 것 입니다. 하지만 우리는 웹 서버가 파일을 주는 친구라고 알고 있습니다. 즉, 이는 우리가 해당 서버에 들어간 것 같아 보이지만, 우리는 파일..
Dreamhack 웹 해킹 공부하기 (쿠키 & 세션) 우리는 웹 서버가 클라이언트와 HTTP 프로토콜을 사용하여 통신한다는 것은 알았으며, 웹 서버는 수많은 클라이언트와 통신을 할 것이다. 그러면 이 때 웹 서버는 많은 클라이언트를 어떻게 구별하고 서로 다른 결과를 반환할까? HTTP통신을 할때 웹 서버에 명령을 내리기 위해 메소드와 자원의 위치를 가르키는 URL이 포함 되어있다. (웹 브라우저 파트에 나옴) 이뿐만 아니라 클라이언트 정보와 요청의 내용을 구체화하는 등의 데이터, 클라이언트의 인정 정보가 있는 헤더도 같이 보내는 데 이 헤더를 통해 웹 서버는 결과 값을 반환한다. 쿠키(Cookies) 클라이언트의 IP주소와 User-Agent는 매번 변경될 수 있으며 HTTP 프로토콜의 Conectionless와 Stateless 특징 때문에 웹서버는 클라..