ETC

[Linux] Raspberry pi 4 : Apache2 세팅

leeejjju 2024. 4. 29. 14:31

 

 

OSS 수업을 위한 환경 설정 백업. 

Raspberry Pi 4에 OS는 리눅스를 기반으로 한 라즈비안이었던 것 같다. 

MariaDB, MySQL, phpMyAdmin을 사용한다. 

 

 

우선 Apache2를 설치해준다.

-y 옵션은 설치 중간에 뭔가 물어보면 아묻따 yes를 갈기겠다는 뜻이다. 눌러놓고 완료까지 신경 안 써도 되게 해주는 좋은 옵션.

$ sudo apt-get install apache2 -y
 

그리고 Apache2를 시작(활성화)

$ sudo service apache2 restart
 

 

MariaDB와 Mysql을 설치한다.

$ sudo apt-get install mariadb-server php-mysql -y
 

Mysql에 새로운 유저를 만들어보자. admin이라는 유저 아이디를 사용할 것이다. 관리자라는 뜻이다.

$ sudo mysql

> create user admin@localhost identified by 'your password';

>grant all privileges in *.* to admin@localhost;

>FLUSH PRIVILEGES;

>exit;

 

 

phpMyAdmin을 설치한다.

웹에서 DB를 확인하고 제어할 수 있게 도와주는 친구이다.

$ sudo apt-get install phpmyadmin -y
 

웹에서 간편하게 접속 가능하게끔 html 경로에 옮겨준다.

$ sudo ln -s /usr/share/phpmyadmin/ /var/www/html/phpMyAdmin
 

PHP도 설치해주자.

$ sudo apt-get install php -y
 

PHP와의 연동을 위한 모듈도 설치해준다.

$ sudo apt install php libapache2-mod-php
 

 

성공적으로 진행되었다면 http://raspberrypi.local/phpmyadmin/ 주소를 웹에 넣었을 때 접속이 가능할 것이다.

초록색 부분 대신 우리의 라즈베리파이 IP주소를 넣어주도록 하자.

ex) http://192.168.0.12/phpmyadmin/

여기서 뜨는 페이지가 바로 phpmyadmin 페이지인데, 아까 Mysql에서 만들었던 계정으로 로그인 해주면 해당 DB를 웹으로 요로코롬 조로코롬 할 수 있으시다. 

 

 

Apache 서버가 잘 열렸는지 테스트를 위한 파일도 만들어보자.

먼저 html이 모여있는 경로로 이동. 

$ cd var/www/html
 

새로운 php 파일을 만들어 볼 것이다. 터미널에서 편집기를 열기 위해 vim을 써보자. (없으면 nano같은걸로 대체 가능)

$ sudo vim info.php
 

이하 내용을 입력해주자. 우클릭으로 붙여넣기 가능하다.

vim에서는 Esc , : , wq를 순서대로 입력해서 저장후 종료. nano는 ctl+S , ctl+X로 저장 후 종료.

<?php
phpinfo();
?>
 

이제 웹 브라우저에서 http://raspberrypi.local/info.php 주소로 접속이 가능할 것이다. 역시 초록부분은 우리 파이의 IP로 대체.

 

모든 과정이 스무스하게 흘러갔다면, 이제부터는

/var/www/html 디렉토리에 어쩌구.html이나 어쩌구.php를 만들어 적절한 내용을 입력해 저장했을 때,

웹 브라우저에서 "http://raspberrypi.local/어쩌구.html(혹은.php)" 이래 입력함으로서 해당 페이지에 접속이 가능할 것이다~

* 접속이 가능하려면 라즈베리파이가 켜져있고, Apache2가 실행중이고, 파일들의 문법에 오류가 없어야 한다! 

 

 

+ phpmyadmin에 404에러 뜰 때 시도 가능한 솔루션.

$ cd /etc/apache2
$ sudo vim apache2.conf
 

막줄에 이 문장을 추가해준다.

Include /etc/phpmyadmin/apache.conf
 

저장 후 종료, apache2 재시작하고 확인해보기.

$ sudo service apache2 restart
 

 

 

+ 가끔 html코드가 브라우저에 그대로 노출되는 등 문제가 발생하는데... 난 결국 해결 못하고 죄 삭제 후 재설치했다.

깔꼬롬하게 apache2와 php, mysql을 제거하는 법을 갈쳐준 글 (감격적이었다. 오래사세요.)

http://macaronics.net/index.php/m02/linux/view/1735

나는 도움 못 받았으나 이런 글도 있더라

https://chojja7.tistory.com/25

 

 

+ 뭐 설치중에 뜬 "E: Could not get lock /var/lib/dpkg/lock-frontend." 요 에러 해결하는데 도와준 글

https://kgu0724.tistory.com/71

 

+ 또다른 자세한 과정을 담은 글

https://hoing.io/archives/7367

 

'ETC' 카테고리의 다른 글

[Linux] Node.js 설치하기  (0) 2025.10.14