[Linux] 웹 서버 구축하기

haryun·2022년 11월 24일
0

Linux

목록 보기
7/16

ubuntu에서 LAMP 서버 구축

  • ubuntu linux
  • apache
  • mariaDB
  • php
$ sudo apt install lamp-server^

해당 명령을 이용하면 번들 패키지를 통해 웹 서버를 간단하게 구축할 수도 있지만 이번엔 수동으로 설치해보기로 했다!

서버는 vBox를 통해 ubuntu 22.04 버전을 생성했다. (기존PC에서 접속할 수 있도록 가상머신의 네트워크 환경을 변경해야함)

1. apache2 설치 및 설정

$ sudo apt install apache2

호스트PC에서 해당 서버로 접속하기 위해서 ip addr 명령으로 가상머신의 ip 주소를 확인 한 뒤 접속한다.

설치만 해서 아직은 아파치 기본 페이지가 나온다! 이제 페이지를 추가해야한다.
/etc/apache2/sites-available/ 디렉토리로 이동하여 000-default.conf 파일을 수정한다.

1-1) vBox에서 공유폴더를 사용할 수 없는 문제

기존에 만들어둔 html 파일을 사용하려고 했는데 vBox에서 공유폴더 기능과 복사, 붙여넣기가 되지 않았다.
설정 - 고급 - 드래그앤드롭, 클립보드 공유 항목을 양방향으로 변경하고 guestAdditions.iso 파일을 설치하려 했으나 자꾸 에러가 생김 ㅠㅠ (맥북 업데이트 후 최신버전의 vBox가 아니면 가상머신이 실행되지 않기에 최신버전을 사용하고 있는데 자잘한 에러가 너무 많이 생김🤬)

결국 22.04 --> 18.04 버전으로 재설치하고 사용할 수 있게 되었다.

1-2) 접속시 403 Forbidden

예전에 작업했던 파일을 옮기는 것은 성공 했으나 접속이 안된다. 에러로그를 확인해보았다!

[Thu Nov 24 12:45:59.019930 2022][core:error] pid 3349:tid 139823158687488Permission denied: [client 192.168.0.68:49781] AH00035: access to /index.html denied (filesystem path '/var/www/html/starbucks/index.html') because search permissions are missing on a component of the path

DocumentRoot 는 바꿔놓고 해당 디렉토리의 권한을 바꾸지 않아서였다 히히,,

드디어 정상 접속! 삽질의 연속이였다,,

2. mariaDB 설치

$ sudo apt update
$ sudo apt install mariadb-server

설치가 완료되면 systemctl status mysql로 상태를 확인한다.

2-1) 보안 조치

$ mysql_secure_installation

데이터베이스의 루트 패스워드를 설정한다.

2-2) DB 생성 및 데이터 추가

$ mysql -u root 

DB 서버에 접근한 뒤, 새로운 데이터베이스와 테이블을 생성했다.
회원가입 페이지도 만들어져있으니 회원가입용으로 쓰면 되겠군

3. php 설치

$ sudo apt install php
$ sudo apt install libapache2-mod-php

3-1) php 테스트

index.html 파일이 있는 경로에 testPhp.php 파일을 생성한다.

<?php
phpinfo();
?>

그리고 해당 파일 경로로 다시 접속해보면
새로 생성한 파일이 정상적으로 연결되었다! (보안을 위해 확인 후 삭제해야한다!)

🔥 정말 간단한 준비 단계만 끝냈다,,ㅎ

0개의 댓글