Grails 2.2.3
프로젝트를 프로덕션에 배포하고 URL 관련 문제가 발생했습니다. Apache에서 역방향 프록시를 설정하고 예를 들어 http://example.com이 있습니다. Config.groovy
에서Grails : 프로덕션 URL에서 AppName을 제거하는 방법
나는 다음과 같은 세트 특성 :
grails.serverURL = "http://example.com/"
과 application.properties
에서 설정 한 다음
app.context=/
그러나 내 자원과 모든 링크는 항상
http://example.com/AppName/...
방법에 참조 리소스 및 리에서 애플리케이션 이름 ("AppName")을 제거합니까? nks 참조? 자원의
예 : 환경의
<r:require modules="bootstrap"/>
<g:javascript library="jquery"/>
예 Config.groovy 파일 :
environments {
development {
grails.logging.jul.usebridge = true
}
production {
grails.logging.jul.usebridge = false
grails.serverURL = "http://example.com/"
grails.app.context = "/"
}
}
내가 생각 Grails 애플리케이션 설정 될 수있는 재산의 일종이 있어야합니다!? 그렇지 않으면 목이 아프다.
도와주세요!
P.S : 리소스에서 직접 액세스 (수동으로 URL에서 AppName 제거)하면 CSS, js 및 이미지와 같은 적절한 정보를 얻습니다.
업데이트 :
app.context=/
serverURL=http://example.com/
및 Grails의 절대 URL 생성 : 나는 application.properties에 다음과 같은 설정
<g:createLink controller="Sample" absolute="true"/>
하고 적절한 URL을 만듭니다! 그러나 자원은 상대 경로를 사용하고 AppName /으로 시작합니다 ... 저주처럼 보입니다. AppName을 제거 할 수 없습니다.
업데이트 : prod run-app
를 실행하면 모든 URL이 제대로 나오지 그러나 내가 톰캣 7을 배포하는 순간, 프로그램 응용 다시 URL이 나타납니다.
'grails.app.context ='/ ''이어야합니다. http://stackoverflow.com/questions/22539389/change-the-context-for-your-application – dmahapatro
링크를 어떻게 생성합니까? – saw303
환경 설정을 위해'Config.groovy'에'grails.serverURL' 속성을 설정 했습니까? – emilan