컴퓨터/Linux

Linux (3) - Linux, Apache, MySQL, PHP 구축하기 (LAMP)

달서비 2023. 1. 11. 13:23

요즘은 웹서버를 구성할 때 다른 언어를 이용하여 구성하는 경우가 많은데 개인 블로그등에서 가장 많이 사용하는 LAMP에 대하여 알아보도록 하겠습니다.

단어 상 연관이 있는 LAMP

LAMP

LAMP리눅스 환경에서 아파치, MySQL, PHP를 통합으로 설치하는 스택입니다. 4가지 소프트웨어는 전부다 오픈소스이므로 유지 보수가 쉽고 누구나 무료로 사용할 수 있습니다. 각각의 역할은 아래와 같습니다.

  • Linux - 운영체제
  • Apache - 웹 서버
  • MySQL - 데이터베이스 서버
  • PHP - 프로그래밍 언어

 

설치 방법

※기본환경은 Ubuntu 22.04버전으로 환경을 구축하였습니다.

 

1. Ubuntu 패키지 최신화

sudo apt update #등록된 저장소 안에 최신 패키지로 업데이트
sudo apt upgrade #최신 패키지를 시스템에 업그레이드

먼저 우분투의 패키지를 최신버전으로 설치 및 업그레이드를 해줍니다. 

 

2. Apache 설치하기

sudo apt-get install apache2

sudo service apache2 start #아파치 서버 시작
sudo service apache2 stop #아파치 서버 중지
sudo service apache2 restart #아파치 서버 재시작

성공적으로 다운로드가 완료될 때 자신 웹사이트의 화면

다운로드가 되면 하이퍼 링크에 localhost라고 검색할 때 해당 화면이 나오면 성공입니다.

 

3. MySQL 설치하기

sudo apt-get install mysql-server # MySQL 설치

sudo service mysql start # MySQL 시작
sudo service mysql stop # MySQL 중지
sudo service mysql restart # MySQL 재시작

mysql -u root -p #MySQL 접속

실행이 완료될때 해당 화면이 나온다

여담으로 실제로 제대로 사용하려고 하는 경우 보안 설정은 필수로 필요합니다

 

MySQL은 실행하기 전 다양한 오류가 있을 수 있습니다. 예시로 프로그램을 구축할 때 my.cnf이 없어서 실행이 안 되는 오류가 있었습니다. 그래서 해당 파일을 만들었습니다.

 

오류

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

 

해결

nano /etc/mysql/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

 

제타위키의 자료를 인용하였습니다.

https://zetawiki.com/wiki/MySQL_%EC%84%A4%EC%A0%95%ED%8C%8C%EC%9D%BC_my.cnf

 

MySQL 설정파일 my.cnf - 제타위키

 

zetawiki.com

 

 

4. PHP 설치하기

sudo apt install php libapache2-mod-php php-mysql 
#PHP 및 연동 모듈을 설치합니다.

우선 PHP를 설치합니다.

nano /var/www/html/index.php
<?PHP
    phpinfo();
?>

해당 화면이 나오면 PHP 다운로드 확인 완료

index.html 파일이 /var/www/html에 있는 경우가 있는데 해당 파일이 있는 경우 화면이 바뀌지 않을 때가 있습니다. index.html을 다운로드하면 화면이 바뀝니다.

cd /var/www/html
sudo rm index.html

 

이렇게 Ubuntu 22.04버전에 LAMP스택을 구축하였습니다.