2017-11-21 17 views
0

최근에 나는 Heroku Java 응용 프로그램에 대한 작업을 시작했습니다.Heroku 404'ing 정적 파일 종속성

모든 내가 (하지만이 관련이없는 수 있습니다)

응용 프로그램은 다음과 buildpacks 사용 ... 준비에서 프로덕션 서버를 이동시킬 때까지 잘 가고 있었다 : 자바 Nodejs 정자

을 bower를 설치하기 만하면됩니다. Gentelella

문제는 이제 아무것도로드되지 않는 것입니다. 제대로 설치 한 것으로 보이며 서버에 bash이 있으면 파일을 볼 수 있습니다.

브라우저를 통해 /resources/style.css으로 이동하면 Bower를 통해 설치되지 않지만 정상적으로 작동하며 파일을 볼 수 있습니다. 내가 /resources/bower_components/gentelella/vendors/jquery/dist/jquery.min.js에 가면 예를 들어, 내가 서버에 비난하면 내가에서 파일을 볼 수있는 나에게 (404)

을 제공합니다 올바른 위치와 올바른 권한을 갖고있는 것 같습니다.

~/웹/자원/bower_components가/gentelella/공급 업체/JQuery와/DIST의 $ 1! 는 -l 총 296

-rw------- 1 u32669 dyno 85658 Jan 25 2017 jquery.js 
-rw------- 1 u32669 dyno 85578 Jan 25 2017 jquery.min.js 
-rw------- 1 u32669 dyno 129572 Jan 25 2017 jquery.min.map 
내 캐시를 청소했습니다

는 "동력계 및 다른 바보를 다시 시작 솔루션 ".

그 밖의 다른 아이디어는 무엇일까요?

UPDATE

파일이 제공되고있는 실제 장소입니다 것을 찾았습니다.

임시 해결책으로이 폴더에 모든 bower_components를 복사 대상/바람둥이/웹 어플리케이션/확장/자원과 지금은 잘 작동하지만, 왜 이런 일이 일어나는지 이해하고 싶습니다.

그래서이 설정을 Heroku 설정이나 다른 곳의 올바른 경로로 설정해야한다고 생각하십니까?

답변

0

문제는 빌드 팩의 순서와 관련이 있습니다.

Java buildpack이 실행되면 웹 자원이 Tomcat 공용 디렉토리로 복사됩니다. Java buildpack이 먼저 실행 중이므로 bower 설치가 올바른 디렉토리에 복사되지 않았습니다.

Java 빌드 팩을 실행하기 위해 순서를 변경하면 마지막으로 수정됩니다.