미국 공학박사의 코딩 연구소


공 지

본 사이트는 지속적으로 업데이트 되고 있답니다. 혹시, 화면 구성이 이상하게 보인다면, "Ctrl+F5"를 이용하여 "새로 고침"을 시도해 보세요.

Linux 사용 시 겪게 되는 문제 해결 방법들을 이곳에 틈날때마나 하나씩 올릴 계획입니다. 도움이 되길 바래요.












웹 서버 구축하기

웹 서버 구축하는 방법을 소개할게요.
무료로 다운받을 수 있을 뿐만 아니라, 널리 사용되는 Apache Tomcat 서버를 이용할 거예요.
단, Ubuntu를 OS로 사용한다는 점 잊지 마세요.





Apache Tomcat 서버 구축하기


Java 설치

먼저 Java를 설치해야 돼요. Tomcat 서버가 Java를 기반으로 돌아기기 때문이지요.
아래와 같이 터미널(Terminal)에서 명령을 실행해 보세요.




Ubuntu에 Tomcat 서버용 user 추가하기

Tomcat 서버의 운용을 위한 전용 user account를 Ubuntu에 추가해 볼까요?
추가할 user이름을 tomcat으로 할 건데요, 새로운 user가 속할 그룹도 추가해 줘야 해요. 그룹 이름도 tomcat으로 할게요.
아래 줄1이 tomcat 그룹을 추가하는 것이구요.
줄2에서는 tomcat이란 이름의 user를 생성하는데, tomcat 그룹에 속하도록 하고 /opt/tomcat 폴더를 홈폴더로 설정하는 거랍니다.




Tomcat 설치하기

Tomcat 서버 파일을 다운로드하고, 설치를 해보지요.
아래처럼 명령어들을 실행해 볼게요.

줄1에서는 버전이 8.5.5인 Tomcat 서버 파일을 다운로드 하려는 것인데요, 파일이 다운로드되지 않는다면, http://apache.mirrors.ionfish.org/tomcat/tomcat-8/로 가서 다른 버전으로 시도해 보세요.
줄3에서는 /opt/tomcat이란 폴더를 새로 생성하는 것이구요.
줄4에서는 다운로드 받은 파일의 압축을 푸는 것인데, 새로 생성한 폴더에 푸는 것이랍니다.




Tomcat 서버 폴더에 대한 user 권한(permission) 설정하기

Tomcat 서버 폴더의 소유권을 tomcat그룹과 tomcat유저에게만 부여할 거예요. 이렇게 하는 이유는 보안성을 향상시키기 위한 것이랍니다.
아래 명령들을 실행할 건데요.

줄1에서 Tomcat 서버 폴더로 들어가구요.
줄3~5에서 tomcat그룹에 서버 폴더의 소유권(ownership)을 부여하는 거예요.
줄7에서는 소유권을 tomcat 유저에게도 부여하는 거랍니다.




Ubuntu에 Tomcat의 서비스(service) 파일 생성하기

Tomcat설치가 끝났으니, 이제 웹서버를 돌려봐야 겠죠? 그러기 위해서는 Ubuntu에 서비스(service) 등록을 해야 해요 그 절차들을 하나씩 설명할게요.
먼저, 아래 줄1처럼 Java가 어디에 설치되어 있는지 확인하는 명령부터 실행해 보세요.

그리고, 줄3에서처럼 /etc/environment 파일을 연 후,
줄4에서 말하는 것처럼, 파일의 빈 줄에 JAVA_HOME 이라는 새로운 환경변수(environment variable)을 추가하되, "my_java_dir"부분은 위 줄1에서 확인한 Java설치 경로로 교체하세요.

이제, 서비스를 등록해 볼게요.
아래 줄1의 명령을 실행함으로써 tomcat.service파일을 /etc/systemd/system 폴더에 생성하구요.
줄3~27에 있는 내용을 똑같이 복사/붙여넣기 하세요. 단, 줄10의 JAVA_HOME 항목에서 my_java_dir 부분은 역시 위에서 확인한 경로로 바꿔야 한답니다.

이제, tomcat이라는 서비스를 생성했으니, 그 서비스를 아래 줄1처럼 등록하세요.
그리고, 줄2처럼 tomcat서비스의 실행을 명령하면, Tomcat 서버가 돌아가기 시작합니다.
줄3은 tomcat 서비스가 잘 돌아가고 있는지 상태를 확인하는 명령이랍니다.
줄4는 컴퓨터를 재부팅해도 tomcat 서비스가 자동으로 돌아가도록 하는 명령이예요.

이제, 웹 브라우저에서 "http://my_server_domain_or_IP:8080" 혹은 "http://localhost:8080"으로 접속을 시도해 보세요.
접속이 안되나요? 그럼, 아래 방화벽 설정하기로 넘어가세요.




Ubuntu의 방화벽(Firewall) 설정하기

위에서 Tomcat 서비스를 돌렸는데도, 서버에 접속이 안될 때는 방화벽이 막고 있는 경우랍니다.
줄1의 명령으로 Tomcat 서버의 포트(port)를 열어보세요.
그런 후에, 웹 브라우저에 "http://server_domain_or_IP:8080" 혹은 "http://localhost:8080"로 접속을 시도해 보세요.




Tomcat 웹 매니저 설정하기

위의 과정을 통해서, "http://localhost:8080"에 접속 가능하게 되었다면, 보이는 화면 오른쪽 상단에 "Manager App"이라는 버튼을 볼 수 있을 거예요. 웹 어플리케이션/사이트들을 관리하는 매니저 화면으로 들어가는 버튼인데요, 들어가기 위해서 User name과 비밀번호를 설정해야 된답니다.

먼저, 아래 줄1처럼 tomcat-users.xml파일을 열어 보세요. 그러면, 줄3처럼 tomcat-users 태그를 찾을 수 있는데요, 아래 줄4부분을 tomcat-users 태그 다음에 추가하세요. 단, my_username과 my_password는 본인이 원하는 이름과 비밀번호로 바꿔야 해요.

다음으로, 서버 컴퓨터 외 다른 컴퓨터에서도 "Manager App"과 "Host Manager"에 접속 가능하게 하고 싶을 때에는, 아래 줄1과 줄2처럼 각각의 해당하는 context.xml 파일을 열고, 줄5~6에서 처럼 Valve 태그 부분을 주석처리 해 주세요.

그리고, 마지막으로 줄9처럼 tomcat 서비스를 재시작(restart)하시면, 모든 과정이 완료됩니다.


혹시, 이해가 잘 안되는 부분에 대한 질문이 있으면, 화면 오르쪽 하단에 "질문하기" 버튼을 이용해 주세요.




Database 서버 구축하기

많은 경우, 웹 사이트를 위해 웹 서버를 구축할 때, Tomcat 설치만으로 끝나지 않지요. 왜냐하면, Database(DB) 서버도 필수적으로 들어가는 경우도 많으니까요. 예를 들어, 게시판을 만들어 이용자와 소통해야 하는 경우나 회원제를 운영해서 로그인 기능이 필요한 경우 등의 경우에는, DB 서버를 함께 구축하여 이용자의 글이나 회원 정보를 저장하고 관리해야 하는 것이죠.

이렇게 DB 서버를 함께 구축하고자 하는 경우를 위해서,
DB 서버의 한 종류인, 게다가 무료인 Mysql DB 서버를 구축하는 방법을 Database 메뉴의 Mysql DB 서버 구축하기에 소개하고 있답니다.






발자취

2019-09-11 "키클 코딩랩 - 미국 공학박사 아빠의 코딩 연구소"로 이름 변경
2019-06-28 코딩 교실 공개
2019-03-18 코딩 교실 제작 시작

바로가기
Python 배움터
C/C++ 배움터
About
Contact
Privacy Policy
강의목록
질문하기
처음으로