1개 서버에서 2개 이상의 서비스를 연결해야할 상황이 발생했다. nginx 에서 sites-available에 연결하려는 서비스에 대한 사이트 정보를 정의하면 된다.

  • honeymon.io 였던 사이트를 다음과 같이 분리한다고 가정해보자.

    • a.ihoneymon.io

    • b.ihoneymon.io

과정

  1. /etc/nginx/sites-available 내에 연결하려는 사이트 파일을 각각 생성한다.

    • /etc/nginx/sites-available/a.ihoneymon.io

    • /etc/nginx/sites-available/b.ihoneymon.io

  2. a.ihoneymon.io와 b.ihoneymon.io를 각각 작성한다.

    #
    # A virtual host using mix of IP-, name-, and port-based configuration
    #
    
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;
    
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
    
    server {
            listen 80;
            listen [::]:80;
            server_name <<site-address>>;
    
            location / {
                proxy_pass http://localhost:8081;
                proxy_set_header        Host            $host;
                proxy_set_header        X-Real-IP       $remote_addr;
                proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                #proxy_set_header        X-Forwarded-Host $host;
                #proxy_set_header        X-Forwarded-Server $host;
                proxy_set_header        X-Forwarded-Proto $scheme;
            }
    }
  3. a.ihoneymon.io와 b.ihoneymon.io를 /etc/nginx/sites-enabled에 연결한다.

    $ sudo ln -s /etc/nginx/sites-available/a.honeymon.io /etc/nginx/sites-enabled/
    $ sudo ln -s /etc/nginx/sites-available/b.honeymon.io /etc/nginx/sites-enabled/
  4. nginx 설정 테스트

    $ sudo nginx -t
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok     
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    정상적인 경우
  5. 테스트를 마치면 nginx 를 재시작한다.

    $ sudo systemctl restart nginx
  6. 설정한 사이트에 대한 DNS 설정을 마치고 접속해서 확인한다.


로컬환경에서 개발을 하다보면, URL에 프로젝트명이 들어가는 것이 번잡스럽고 귀찮은 때가 참 많다. Link를 통해서 연결을 할 떄에도 이에 대한 고려를 해야하는 것이 번거롭기 그지없다.

이클립스 모듈설정을 수정하여 로컬URL에서 프로젝트명을 제거해보자.



  이클립스에서 실행하는 서버를 더블클릭하면 아래 그림과 같이 서버의 정보를 확인할 수 있는 탭이 열린다.

  그 열린 탭의 하단을 보면 [Modules] 라는 탭이 보일 것이다.

  그 탭을 클릭하자.

  그리고는 'Web Modules' 에서 로컬 실행경로(Path : 화면에서는 /honeymon.mvc)를 선택하고, 오른쪽에 있는 버튼들 중 [Edit]를 클릭한다.


[Edit]를 클릭하면 아래의 내용을 가진 팝업창이 뜬다.

'Path'를

'/honeymon.mvc'

에서

'/'

으로 변경한다. 그리고는 [OK] 버튼을 눌러주자.

그런 다음, [Server]탭에서 서버를 선택한 후 [Clean] 과 [Publish]를 차례로 클릭해준다.

그 후에 서버를 재시작하고 URL을

http://localhost:8080/

으로 입력하면 아래와 같이 내용이 나타나는 것을 확인해볼 수 있다.

아래처럼 나타나면 정상적으로 적용된 것이다.

@_@) 이클립스의 workspace를 바꿔주네, 이클립스에서 사용하는 서버의 설정파일을 수정하네

라는 글들이 있었지만, 위의 방법이 제일 빠르고 손쉬웠다.

나는 그랬다.



+ Recent posts