Categories
아무말대잔치

Raspberry Pi 4 웹서버 설정하기

주말동안 라즈베리파이4를 웹서버로 설정하는 작업을 진행했고, 이 글을 쓰는 현재 대부분의 세팅이 완료되었다. 아직 세부적으로는 더 손을 봐야겠지만, nginx 서버의 파일 업로드 크기 제한을 풀어놓는 것까지 해둔 지금은 뭐 그럭저럭 쓸만한 듯.

하다보니 배보다 배꼽이 더 큰 작업이었다. sirini.blog 도메인은 충동적으로 구매했다. 그냥 sirini.asuscomm.com 으로 계속 써도 되는데, 주소가 너무 길고 내가 어떤 무선 공유기를 쓰는지 광고하는 것 처럼 보이는 것도 싫어서 샀다.

너무 오랫만에 세팅이었고, 나는 LAMP(Linux Apache MySQL PHP) 세대인데 지금 대세는 LEMP(Linux (E)Nginx MariaDB PHP) 였다. 관성대로 해서는 여전히 과거에만 머물 수 밖에 없다. 즐거운 마음으로 간만에 삽을 꺼내들고 내가 참고할만한, 삽질을 먼저하신 선배님들의 발자취를 구글에서 찾아보았다.

https://ryan-han.com/post/server/raspberry_server_1/

그리고 발견한 링크가 위의 링크이다. 정말로 대부분의 내용이 잘 정리되어 있어서 솔직히 그냥 따라 하기만 해도 99%는 문제 없었다. 문제 있었던 부분은 Nginx 설정에 익숙하지 못한 나의 잘못과, 도메인을 DDNS 도메인으로 연결하는 부분을 잘 몰랐던 내 탓일 뿐.

정말로 많이 배웠는데, 그 중에서도 웹서버를 Nginx로 대체한 것은 탁월한 선택이다. Apache는 안정적이지만 무겁고 라즈베리파이같은 초소형 서버에는 걸맞지 않다. Request 요청이 왔을 때 Thread나 Process를 늘리는게 아닌 비동기 이벤트 방식으로 처리하는 건 Nginx를 선택해야하는 중요한 이유다. 덤으로 설정이 나에겐 좀 생소했지만 어렵진 않았다. 덕분에 꽤 만족스런 웹서버 구성을 했다.

sirini.net을 운영할때도 하지 않았던 SSL 설정을 위 링크의 설명을 보면서 했다. 아마 라즈베리파이로 웹서버 만들겠다는 생각을 하지 않았더라면 영영 몰랐으리라. 그 동안 배울 생각은 안하고 안주했던 스스로를 반성한다.

집에서 라즈베리파이4로 웹서버를 구성하는 것은 위의 링크에 정성껏 작성된 글을 보고 따라하면 된다. 여기서 굳이 중언부언 할 필요는 없겠지. 모든 걸 외울 필요 없이 필요할 때 구글신에게 물어보면 된다는 주의이긴 하지만, 저 링크 속 글들은 내 것으로 만들고 싶다.