웹, 앱
[웹서버] 라즈베리파이 서버 구축 A to Z (2) - Nginx 설치 및 설정
Hyun-danpung2
2022. 8. 3. 13:46
728x90
반응형
2단계: Nginx 설치 및 설정
나는 Apache 대신에 Nginx를 이용했다. Apache와 Nginx, 그리고 이 다음에 설치할 Tomcat의 차이점은 아래에서 확인할 수 있다.
https://danpung2.tistory.com/35
sudo apt-get install nginx
위 명령어로 nginx를 설치했고 나는 기존의 설정 파일을 전부 삭제한 후 설정 파일을 새로 만들었다.
rm /etc/nginx/sites-enabled/default
rm /etc/nginx/sites-available/default
위 명령어로 기본 설정 파일을 삭제한 후, 아래 명령어로 새로운 설정 파일을 만들었다. 이렇게 한 이유는 nginx에서 여러 개의 서버를 돌리는 상황이 있을 수도 있을거라 생각해서 였다. 이 글에서는 프로젝트 이름을 project로 처리하겠다. (추가적으로, 나는 vim을 설치했다.)
vim /etc/nginx/sites-enabled/project.conf
그 후 sites-enable과 sites-available을 심볼릭 링크로 엮어준다. 이때, 심볼릭 링크란, 윈도우의 바로가기와 비슷한 개념으로, ln -s [원본] [생성] 명령어를 사용해서 만들어준다.
ln -s /etc/nginx/sites-enabled/project.conf /etc/nginx/sites-available/
그 다음으로 project.conf 내용을 채워준다.
server {
listen 80;
listen [::]:80;
server_name [도메인 주소]; (없다면 주석)
root [루트 경로];
#index index.html; (index페이지)
#error_page 404 error.html; (error페이지. 없으면 주석)
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
index index.html;
}
location /api {
proxy_pass http://localhost:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
나는 API 요청을 /api를 붙여서 하도록 할 예정이었기에 톰캣 기본 포트인 8080을 미리 설정해주었다. 이렇게 하면 웹사이트에 접근했을 때는 location / 설정에 따르고, API를 요청할 때는 location /api 설정에 따른다.
설정을 완료해주고 다음 명령어로 nginx을 재시작해준다.
sudo systemctl restart nginx
728x90
반응형