Nginx: 도 메 인 이름 전송 (CentOS 7)
docker 를 사용 하여 응용 시스템 을 구축 합 니 다. 응용 시스템 이 증가 하 는 상황 에서 많은 IP / 도 메 인 이름과 포트, 특히 포트 번 호 를 기억 하기 어렵 습 니 다.포트 번호 가 없 는 도 메 인 이름 을 통 해 서로 다른 주소 의 포트 에 접근 하 는 서비스 가 필요 합 니 다.예 를 들 면:
a.zombie.com => 192.168.1.2:81
b.zombie.com => 192.168.1.2:82
c.zombie.com => 192.168.1.3:81
레 퍼 런 스
테스트 환경:
[root@localhost ~]# uname -r
3.10.0-229.el7.x86_64
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.1.1503
[root@localhost ~]#
환경 의존: 1. 네트워크 도 메 인 네 임 서버: 서버 를 설정 하 는 도 메 인 네 임 (또는 네트워크 의 화 는 자신 이 구 매 한 도 메 인 네 임 을 사용 할 수 있 습 니 다) 2. 2 개의 웹 서비스 (뒤의 절차 에서 모두 다음 과 같은 설명): - ip1:port_1 - ip_1:port_2, 3. nginx 서버 1 개
순서
웹 서버 준비
이것 은 더 이상 군말 하지 않 고 아파 치, Nginx, IIS 등 유형의 웹 서버 를 임의로 사용 할 수 있다.
ip_1:port_1
ip_2:port_2
Nginx 설치
설명: 테스트 할 때 docker 를 사용 하지 않 고 직접 사용 하 는 centos 7 가상 컴퓨터
yum install nginx
service nginx start
nginx -v
nginx version: nginx/1.6.3
http://localhost
하면 첫 페이지 를 볼 수 있 습 니 다.Nginx 설정
파일 위치 설정
Centos:/etc/nginx/nginx.conf
로그 파일 위치
, /var/log/nginx/
DNS 서버 설정 도 메 인
192.168.1.10
192.168.1.10
을 설정 합 니 다. 다음 도 메 인 이름, IP 대응 관계 => IP
ip_1_port_1.zombie.com => 192.168.1.10
ip_2_port_2.zombie.com => 192.168.1.10
도 메 인 이름 전송 설정
server { listen 80; server_name [domain_name]; location / { proxy_pass [URL] }
}
[domain name] 을 위 에 설 정 된 도 메 인 이름 으로, [URL] 을 실제 서버 주소 로 바 꿉 니 다.이 예제 에 http {} 에 다음 과 같은 내용 을 추가 합 니 다.
server {
listen 80;
server_name ip_1_port_1.zombie.com;
location / {
proxy_pass http://ip_1:port_1
}
}
server {
listen 80;
server_name ip_2_port_2.zombie.com;
location / {
proxy_pass http://ip_2:port_2
}
}
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block. include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
테스트 검증
http://ip_1_port_1.zombie.com
하면 페이지 의 내용 이 실제 http://ip_1:port_1
와 같다 는 것 을 볼 수 있다 http://ip_2_port_2.zombie.com
하면 페이지 의 내용 이 실제 http://ip_2:port_2
와 같다 는 것 을 볼 수 있다 프로 세 스 문제
connect() to 127.0.0.1:8001 failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8001/", host: "localhost:8080"
해결 방법: 참고http://stackoverflow.com/questions/23948527/13-permission-denied-while-connecting-to-upstreamnginx cat /var/log/audit/audit.log | grep nginx | grep denied
cat /var/log/audit/audit.log | grep nginx | grep denied
semodule -i mynginx.pp
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.