2014-10-06 3 views
0

마지막으로 내 개발 시스템에서 결과가 만족스러워 지자 카피스트라노를 사용하여 VPS에 Rails 4 앱을 배포하기로 결정했습니다. 내 스택으로 NGINX와 Unicorn을 선택했습니다. 이제는 프로덕션 환경에서 모든 작업을 수행하기 위해 변경해야하는 몇 가지 사항을 알았지 만, 어떻게 든 뷰를 업데이트 할 수 없습니다. 난 이미 무슨 짓을뷰가 프로덕션 환경에서 업데이트되지 않음

은 다음과 같습니다

  1. 이 거짓
  2. 수동에있는 파일을 확인에 config.action_controller.perform_caching 설정하여 설정/production.rb에서 캐시를 사용하지 않도록 브라우저 캐시
  3. 지우기 원격 서버 사용하여 ssh를
  4. 다시 시작 내 로컬 파일 아칸소 사실 내 서버 스택

e를 프로덕션 서버에있는 것과 동기화하지만 브라우저에서 변경 사항을 볼 수 없습니다. 내가 뭘 할 수 있을까? 내가 놓친 것이 있습니까? 도와 주셔서 감사합니다. 당신이 남아있는 캐시 TMP 파일이없는 경우

+0

나는 당신이 어떻게 다시 시작합니까? 유니콘이 재시작 되었습니까? – number5

+0

다음 명령을 실제로 수행하는 스크립트를 실행하고 있습니다. bundle exec unicorn -c config/unicorn.rb -E production. 난 그냥 수동으로 그것을 테스트하고 잘 작동하는 것. 그런 다음 NGINX를 사용하여 시작합니다 : sudo service nginx restart. –

답변

1

1.

What i already did is: 
    Disabling the cache in config/production.rb by setting config.action_controller.perform_caching to false 

내가 그 캐시 따라서 일부 캐시 파일이 이전에 생성 된 수, 이전에 활성화 된 지금에 의해 제공됩니다 의미 가정 확인 NGINX가 레일을 거치지 않고 캐시를 수동으로 지운다 고 언급하지 않았습니다.

"공용"폴더를보고 캐시 파일이 있는지 수동으로 삭제할 수 있지만 자신이 무엇인지 알고 있어야합니다 응용 프로그램의 다른 부분에서 사용할 수있는 파일을 삭제하거나 삭제하지 않습니다. 에. 프록시 캐싱이없는 경우 또는 콘솔을 통해 프로덕션 서버의 캐시를 삭제 시도 할 수

# from the root directory of your application, open your rails console 
$ RAILS_ENV=production rails c 
# Then in the console, type 
> Rails.cache.clear 

2. 확인 같은 페이지가 외부 구성 요소에 의해 캐시 가능성이

프록시로 로컬 콘솔에서 서버의 출력을 확인해야합니다. 서버 콘솔에 로그인하고 curl을 실행하여 localhost에서 페이지의 출력을 얻은 다음 (서버 외부 IP를 사용하지 마십시오) 소스가 출력을 업데이트하는지 확인하십시오. 그건 좀 더 조사를 위해 문제의 근원을 조금 좁힐 것이다

+0

답장을 보내 주셔서 감사합니다. 그것은 어떻게 든 이상하지만, 내 공용 폴더에 캐시 파일을 볼 수 없으며 내가 제안한 명령을 실행하면 tmp에 캐시 폴더가 없다는 오류 메시지가 나타납니다. –

+0

다른 아이디어를 제공하기 위해 내 대답을 수정했습니다. – Benj