Skip to content

Instantly share code, notes, and snippets.

@soohoonlee
Created June 26, 2018 02:15
Show Gist options
  • Save soohoonlee/706a2c017ecdd010593278a12800d3f8 to your computer and use it in GitHub Desktop.
Save soohoonlee/706a2c017ecdd010593278a12800d3f8 to your computer and use it in GitHub Desktop.
RHEL 7.4 Nginx + Apache Tomcat

RHEL 7.4 Nginx + Apache Tomcat

의존성 update

sudo yum update

방화벽 설정

방화벽 목록 확인

firewall-cmd --list-all

방화벽 포트 추가

firewall-cmd --permanent --zone=public --add-port=80/tcp

방화벽 포트 제거

firewall-cmd --permanent --zone=public --remove-port=80/tcp

방화벽 적용

firewall-cmd --reload

Nginx 설치

yum repo 추가

vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/rhel/7/$basearch
enabled=1
gpgcheck=0

nginx 설치

sugo yum install -y nginx

설치 확인

nginx -V

nginx 실행

service nginx start

참고문서

Java 설치

  1. opt 폴더로 이동
  2. jdk 8 최신 버전 다운로드
  3. 압축 해제
cd /opt/
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u172-b11/a58eab1ec242421181065cdc37240b08/jdk-8u172-linux-x64.tar.gz"
tar xzf jdk-8u172-linux-x64.tar.gz
  1. alternatives
alternatives --install /usr/bin/java java /opt/jdk1.8.0_172/bin/java 2
alternatives --config java
  1. 설치 확인
java -version

참고문서

Apache Tomcat

  1. 설치 폴더 생성
  2. Which version? 참고하여 적절한 Apache Tomcat 선택
  3. 다운로드 페이지 > Core > tar.gz 의 링크를 복사
  4. 다운로드
  5. 압축 해제
wget http://mirror.apache-kr.org/tomcat/tomcat-8/v8.5.31/bin/apache-tomcat-8.5.31.tar.gz
tar xzvf apache-tomcat-8.5.31.tar.gz

환경변수 설정

vi /etc/profile

파일 최상단에 추가 후 저장

export CATALINA_HOME="tomcat installation path"
export JAVA_HOME="java installation path"
export JRE_HOME="java installation path"/jre
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$CATALINA_HOME/lib

적용

source /etc/profile

Nginx Configuration

Nginx 실행 계정 변경

vi /etc/nginx/nginx.conf

user  "일반계정"

Apache Tomcat 연동

vi /etc/nginx/conf.d/default.conf

server {
    listen       80;
    server_name  localhost;
    
    access_log  /var/log/nginx/aaa/access.log;
    error_log   /var/log/nginx/aaa/error.log;
    
    location / {
        proxy_pass http://localhost:7070;
        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;
    }
}
  • listen: 수신 대기할 포트 지정
  • server_name: 주어진 요청에 사영되는 서버 블록을 결정
  • access_log: access_log를 해당 위치에 저장
  • error_log: error log를 해당 위치에 저장
  • proxy_pass: 요청이 오면 http://localhost:7070로 전달
  • proxy_set_header XXX: 실제 요청 데이터를 header의 각 항목에 할당

설정 문법 검사

nginx -t

Nginx 재시작

service nginx restart
  • Proxy 접속이 안되는 경우 - (13: Permission denied) while connecting to upstream
setsebool -P httpd_can_network_connect on
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment