2010-01-06 9 views
1

저는 최근에 레일을 가지고 놀았으며 그것이 어떻게 작동했는지보기 위해 변형 과정을 거쳐 가고 싶었습니다. scaffold에서 sIngle 모델로 간단한 앱을 만들었습니다. 내 서버에 업로드했는데 URL에/public을 추가하여 '환영합니다'화면을 가져와야한다는 것을 알았습니다. 그러나 내 모델 (공개/메시지)에 액세스하려고 시도하면 404 오류가 발생합니다. 아무도 내게 조언을 해줄 수 있습니까?레일 응용 프로그램 배포

내 서버는 fcgi와 함께 레일을 사용합니다.

간단한 질문에 사과드립니다. 예전에는 레일을 사용하지 않았고 아직 어떻게 작동하는지 완전히 알지 못합니다.

감사의 말.

감사합니다.

답변

0

당신은 쉽게 (mod_rails 또는 mod_rack 일명) Passenger의 아파치 모듈과의 레일 응용 프로그램을 배포보고 싶지하고있는 fcgi 더 나은 성능을 가지고 있습니다.

+0

내 서버가 공유 호스팅에 있고 쉘 액세스 권한이 없습니다. – Dan

0

설정 레일은 까다로울 수 있으며 호스트마다 크게 다릅니다.

올바르게 설정했다면 URL에/public을 넣지 않아도됩니다./public은 기본 디렉토리입니다. 따라서 레일스가 생성하는 기본 index.html을 찾으려면 # domain.com/index.html이어야합니다.

올바른 방법으로 앱을 업로드하고 설정해야합니다.

0

응용 프로그램을 웹 사이트 디렉토리에 업로드했거나 기호 링크를 사용하고 있습니까? 일반적으로 cgi/fcgi를 사용하면 웹 접근이 불가능한 디렉토리에 실제 응용 프로그램이 있고 public_html/(또는 웹 디렉토리가 호출되는 곳)의 심볼릭 링크가있는 것이 좋으며 app/public/을 가리 킵니다. 예배 규칙서. 그러나 심볼릭 링크없이 작동시킬 수도 있습니다.

이제 다음 정보는 일반/일반 정보이며 여러 인기있는 공유 Rails 호스트를 포함합니다. 그러나 호스트가 다른 설정을 가지고있을 가능성이 있습니다. 이 경우 사용중인 호스트를 알려 주시면 도움이 될 것입니다.

app/public/디렉토리 내에는 dispatch.fcgi 파일이 있어야합니다. 우선이 파일이 있는지 확인하십시오. 이 경우, 파일이 755에 chmodded되어 있는지 확인하고 첫 번째 라인을 변경하려고 :이 경우

#!/usr/bin/ruby18 

:

#!/usr/bin/ruby 

(.이 호스트에 따라 달라질 수 있습니다)

app/public/디렉토리에는 .htaccess라는 파일이 있어야합니다.

RewriteRule ^(.*)$ /dispatch.cgi?$1 [QSA,L] 

에 : 그것은 다음 줄을 변경

RewriteRule ^(.*)$ /dispatch.fcgi?$1 [QSA,L] 

이러한 변화의도는 dispatch.fcgi, htaccess로의 전체 내용을 게시의 디렉토리 구조를 설명하십시오 일 경우 호스팅 계정. 이전에 언급 한 바와 같이 어떤 호스트를 사용하고 있는지 알려주는 것도 도움이 될 것입니다.

+0

안녕하세요. 오늘 밤에 다시 방문 할 때 사용해 보겠습니다. 제 호스트는 34sp btw입니다. 나는 조언을 구하는 이메일을 보냈습니다. – Dan