2012-05-19 3 views
3
자바 컨테이너 URL 매핑을 무시하는

나는 전쟁 my-web-app.war라고하고 나는 나의 브라우저를하여 액세스 할 수있는, 제대로 시작 가정, Tomcat의 webapps/ 디렉토리에 배포하는 경우 :어떻게 배치 애플 리케이션

http://localhost/my-web-app 

마찬가지로 내가 EAR이있는 경우, my-server-app.ear라고하고 나는 나의 브라우저를하여 액세스 할 수 있습니다, 다음도 제대로 시작 가정, 글래스 피쉬의 domain/autodeploy/ 디렉토리에 배포 :

http://localhost/my-server-app 

니어 내 WAR/EAR을 같은 이름으로 유지하려고하지만이 기본값과 다른 URL에 배치해야한다면 어떻게해야합니까? 예를 들어 :

  • 는 "
  • http://localhost/srvapp로하는 my-server-app.war 그것을 설치 가능하다 내가 아는 아파치와 같은 다른 서버에서처럼 http://localhost

를 배포합니다 my-server-app.war 배포 확인 http://localhost/webapp

  • my-web-app.war 배포합니다 가상 디렉터리 "등을 사용하여 http://example.com/some/long/path/to/file.html이 브라우저에 http://example.com/file으로 표시되도록하고 Tomcat/GlassFish에서 허용하는지 궁금합니다. s (그렇다면 어떻게)?

    내가 그들의 이름에 포함 된 모든 내 WAR에/귀 버전이 의도 때문에 물어, 그래서 파일 시스템에 그들을보고 즉시 그들처럼, 어떤 버전을 알 수 있습니다 :

    • my-web-app-3.17.2.war는 등

    그리고 내 사용자가 http://localhost/my-web-app-3.17.2로 이동하기는 작은 미친 것으로 보인다.

  • 답변

    3

    Tomcat의 경우이 작업을 수행하는 몇 가지 방법이 있지만 가장 좋은 방법은 병렬 배포 버전 라벨을 이용하는 것입니다.

    당신처럼 WAR 뭔가 이름을 것입니다 :

    webapp##my-web-app-3.17.2.war 
    

    을하고 ## 병렬 배치를위한 버전 레이블로 처리 한 후에는

    /webapp 
    

    아무것도에 배포 할 것입니다. 자세한 내용은 docs을 참조하십시오. 당신은 당신이 각 전쟁에 대한 파일 application.xml을

    컨텍스트 루트를 설정할 수 있습니다 EAR이있는 경우

    +0

    감사합니다 @ 마크를 설정할 수 있습니다 - 무엇을 글래스 피쉬에 대해? "병렬 배포"를 검색 할 때 문서에서 아무 것도 볼 수 없습니다. 따라서 Tomcat 용어 여야합니다 ... – IAmYourFaja

    +0

    죄송합니다. GlassFish에 관해서는 알 수 없습니다. 나는 그 프로젝트가하고있는 일에 관심을 기울이지 않는다. –

    1

    당신은 컨텍스트 루트를

    관련 문제