-
[Nginx] Proxy Server 테스트Linux 2025. 3. 21. 18:22
클라이언트(사용자)가 특정 서버(ex. localhost:80)로 요청을 보내면 Nginx가 이 요청을 받아 다른서버(ex. naver.com)로 대신 전달하도록 Reverse Proxy 테스트
Nginx 설치 (yum)
- 필수 구성 요소 설치
yum install yum-utils
- Repo 설정
# vi /etc/yum.repos.d/nginx.repo [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true
→ NginX는 stable(default), mainline 두 버전이 있는데 버그 수정이나 보안 패치 등은 항상 mainline 버전에 먼저 적용되기 때문에 mainline을 사용하는 것을 권장한다.
- 버전(mainline) 설정
yum-config-manager --enable nginx-mainline
- Nginx 설치
yum -y install nginx
- Nginx 실행
# service start nginx systemctl start nginx
Reverse Proxy 테스트
- /etc/nginx/conf.d/default.conf 수정
server { listen 80; server_name naver.hyun; location / { proxy_pass http://www.naver.com; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
- +) DNS 등록이 안되어 있을 경우
- common.conf
server { listen 80; server_name redmine.hyun.com; # DNS 등록이 안 되어 있으므로 해당 IP 지정 resolver 192.168.0.101; location / { proxy_pass http://redmine.com; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
- Nginx reload
(restart 보다는 reload 사용 권장 - nginx 서버 마비 방지)
sudo service nginx reload # 커맨드 테스트 # nginx -t
- /etc/hosts 파일에 hosts 추가
# 접속할 도메인명 (server_name) 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 redmine.hyun.com naver.hyun # 테스트용 서버 192.168.0.101 redmine.com
- 접속하는 로컬 PC에 hosts 추가
- 메모장 관리자 권한으로 실행
- C:\Windows\System32\drivers\etc\hosts 파일에 추가
192.168.0.101 redmine.com 192.169.0.100 naver.hyun
- 동작 확인
Reference
'Linux' 카테고리의 다른 글
Git 버전 업그레이드 (0) 2025.03.22 Chrony 설치 및 NTP 동기화 설정 (0) 2025.03.21 [ERROR][Ubuntu] Hash Sum mismatch (0) 2025.03.21 [Ubuntu] local-repo + docker-ce repo 생성하기 (0) 2025.03.21 [CentOS7/Rocky8] local-repo + docker-ce repo 생성하기 (0) 2025.03.21