포스트

모의해킹용 웹 페이지 제작#1 ( DB 제작과 회원가입 ) Ubuntu(20.04.06 LTS) [Apache, MariaDB, PHP]

모의해킹용 웹 페이지 제작#1 ( DB 제작과 회원가입 ) Ubuntu(20.04.06 LTS) [Apache, MariaDB, PHP]

모의해킹용 웹 페이지 제작#1 ( DB 제작과 회원가입 ) Ubuntu(20.04.06 LTS) [Apache, MariaDB, PHP]

날짜: Web Hacking

모의해킹용 웹 페이지 제작#1 ( DB 제작과 회원가입 ) Ubuntu(20.04.06 LTS) [Apache, MariaDB, PHP]

참고자료 : https://www.codingfactory.net/12187

​

​

​

  1. DB 만들기

​

웹 페이지를 만들기에 앞서, MariaDB를 이용해 DB를 만들어줘야한다.

​

아래의 명령어를 입력하고 root의 비밀번호를 입력하여 MariaDB를 실행시켜준다.

​

이러한 문구가 나온 뒤, 입력칸 상태가 아래와 같이 변할것이다.

​

여기에 ‘CREATE DATABASE’ 명령어를 이용하여 DB를 만들어주면 된다.

​

DB를 만들었다면 ‘USE’ 명령어를 사용하여 해당 DB를 사용한다고 알려줘야 한다.

​

정상적으로 작동했으면 아래와 같은 화면이 본인의 화면에도 보일 것이다.

DB 제작과 사용 설정

수고했다.

서버 운용을 위한 DB를 정상적으로 만든 것이다.

​

​

​

  1. table 만들기

​

회원정보를 저장하기 위해서 DB에

id, username, password를 갖고있는 table을 만들어야 한다.

아래와 같이 입력해주면 된다.

​

​

​

  1. 회원가입 페이지 구현하기

​

웹 페이지를 만들고 웹 서버에 적용하기 위해선 vi로 .php 파일을 만든 뒤 해당된 경로에

저장해줘야 한다. ( vi를 만들 때, sudo를 이용해 관리자 권한으로 만들어 줘야 한다. )

Ubuntu를 사용하는 내가 php파일을 저장해야 하는 위치는

/var/www/html 였다.

나는 이 안에 webphp 디렉토리를 만들었다.

최종적으로 php 파일들이 위치한 곳은

/var/www/html/webphp 인 것이다.

나는 아직 php에 무지하기에 맨 위에서 언급한 참고 사이트의 소스를 사용하였다.

​

먼저, DB를 연결해주기 위해 db.php 파일을 만들어야 한다.

아래의 코드에서 ‘db_user’, ‘db_password’, ‘db_name’ 부분을

각각 자신의 DB의 사용자명, 비밀번호, DB이름으로 변경해줘야 한다.

​

db.php

​

아래의 register.php는 회원가입 페이지의 php 파일이다.

​

register.php

​

다음으로, 아래의 registerok.php는 회원가입이 성공했을 때의 작동할 php 파일이다.

​

registerok.php

​

파일을 저장하고 난 뒤에는 아래와 같은 명령어로 서버를 다시 시작해주는게 좋다.

( 서버가 작동 중일 때에만 해당. )

​

  • 오류 발생 *

​

localhost/webphp/log/register.php에서 회원가입을 하면

register-ok.php로 넘어가서 회원가입이 완료됐다는 메시지와 함께 DB에 저장이 돼야 하는데,

둘 다 정상작동 X

첫 번째 원인 : register.php에서 리다이렉트시키는 위치의 이름 불일치.

( registerok.php여야 하는데 register-ok.php로 작성 )

두 번째 원인 : register.php의 jb_conn 부분에서 사용자명 등 이름 불일치.

​

해결완료

​

​

  1. 정상작동 확인하기

​

페이지를 제작했다면, 해당 페이지가 정상 작동하는지 확인해봐야 한다.

먼저, 웹 브라우저 창에

‘localhost/webphp/log/register.php’

를 입력하여 회원가입 페이지에 접속한다.

무얼 해야겠는가? 당연히 회원가입이다.

​

진행시켜!

​

회원가입을 한 뒤, 성공적으로 아래와 같이 registerok.php로 접속하게 된다면

반쯤 성공한 것이다.

​

마지막으로, DB에 정상적으로 저장됐는지 확인해보자.

DB에 접속한 뒤, ‘USE’를 이용하여 DB를 선택해주고

‘SELECT’를 이용하여 테이블을 시각화해주면 된다.

이렇게 뜬다면, DB에 회원정보가 정상적으로 저장된 것이다.

​

​

수고했다.

회원가입 페이지를 만들었다.

​

오늘의 교훈

어떤 오류가 발생해도 좌절하지 말고, 구글링을 열심히 하자.

그래도 해결될 기미가 보이지 않는다면…

Chat GPT를 적극적으로 이용하자!

​

​

추가적으로, 생성된 회원 정보를 삭제하고 싶을 땐

mysql에서 아래와 같은 명령어를 사용하면 된다.

​

끝


이미지

이미지 1

이미지 2

이미지 3

이미지 4

이미지 5

이미지 6

이미지 7

이미지 8

이미지 9

이미지 10


이 글은 모든 권리 보유 입니다. 출처를 밝힌 게시글 링크 공유만 가능하며, 전문 복제·전재는 허용되지 않습니다.