2014-12-13 2 views
0

작은 문제가 있으며 어디서부터 시작해야할지 모르겠다. 응용 프로그램 오류가 있으며 내 MongoLab 데이터베이스가 올바르게 연결되어 있지 않은 것 같습니다. 여기Mongolab이 PencilBlue로 Heroku에 연결

는 오류가 응용 프로그램에서 발생하여 페이지 이 제공되지 않을 수 Heroku가 w2w.

에 링크입니다. 잠시 후 다시 시도하십시오.

응용 프로그램 소유자 인 경우 자세한 내용은 로그를 확인하십시오. 나는 그것이로드되지 왜 아무 생각이

{ 
"siteName": "PencilBlue Heroku and MongoDB Demo", 
"siteRoot": "http://w2w.herokuapp.com", 
"siteIP": "w2w.herokuapp.com", 
"log_level": "info", 
"db": { 
    "type":"mongo", 
    "servers": [ 
    "mongodb://hercules:[email protected]:63330/pencilbluedb" 
    ], 
    "name": "pencilbluedb", 
    "authentication": { 
     "un": "hercules", 
     "pw": "MYPASSWORD", 
    }, 
    "writeConern": 1 
}, 
"cache": { 
    "fake": true, 
    "host": "localhost", 
    "port": 6379 
}, 
"settings": { 
    "use_memory": true, 
    "use_cache": false 
}, 
"templates": { 
    "use_memory": true, 
    "use_cache": false 
}, 
"plugins": { 
    "caching": { 
     "use_memory": true, 
     "use_cache": false 
    } 
} 
} 

:

그리고 여기 내 config.json 파일입니다. 나는 여기서 지침을 따랐다 : Pencilblue link, 유일한 차이점은 MongoLab에 연결하려고 시도하고 있으며 MongoHQ (이미 "작성"으로 변경 되었음)을 제안하고 있다는 것입니다.

도움을 주시면 감사하겠습니다.

+0

heroku CLI가 설치되어있는 경우 "heroku logs --tail"https : //devcenter.heroku를 사용하여 앱 로그를 테일 할 수 있습니다.co.kr/articles/logging # 실시간 꼬리. 더 이상 질문이 있으시면 [email protected] –

+0

에 연락하십시오. Chris, 저는 heroku logs --tail을 실행하고 "App crashed"코드 = H10을 사용하여 호응합니다. 나는 몽고와 노드를 처음 사용하기 때문에 그것이 의미하는 바를 나에게 말해 줄 수있다. –

+0

앱의 변경 사항을 푸시하거나 앱을 다시 시작하기 전에 로그 테일링을 시작해야합니다. 그런 식으로 귀하의 애플 리케이션이 충돌하면, 당신은 오류가 무엇인지 정확히 볼 수 있습니다. –

답변

1

PencilBlue 지침에 mongodb 연결 문자열의 일부로 db 자격 증명이없는 것처럼 보입니다. 연결 문자열에서 연결 문자열을 남겨두고 문제가 해결되는지 확인하십시오. 이미 수행중인 것처럼 보이는 '인증'필드에 자격 증명을 지정했는지 확인하십시오.

+0

댓글을 달 수있는 부분을 명확히 할 수 있습니까? 방금 학습을 시작한 이래로 나는 조금 잃어 버렸습니다. 고맙습니다. –

+0

"mongodb : // hercules : [email protected] : 63330/pencilbluedb"을 사용 중입니다. 대신 "mongodb : //ds063330.mongolab.com : 63330/pencilbluedb"을 사용해보십시오 –

+0

오, 알았습니다. 이 문제를 처음 접했을 때이 옵션을 시도했습니다. 그것은 그것을 해결하지 못했습니다 : ( –

0

여기에 연필 블루 공동 창업자가 있습니다.

당신은 MongoDB를 URL의 끝에있는 슬래시이 누락 :

"mongodb://hercules:[email protected]:63330/pencilbluedb/" 
+0

친애하는 C0 창립자 모든 존경과 최고의 소원, 죄송하지만 도움이되지 않습니다! 슬래시 - 자격 증명 - 자격 증명이 없습니다. 응용 프로그램 오류가 나타납니다. –

+0

음, 그렇다면 로그 수준을 '디버그'또는 '바보'로 설정하고 github에서 티켓을 열면 더 자세히 살펴볼 수 있습니다. –

0

내가 찾은를이 작동합니다 :

말은 예를 들어이

MongoDB를 URI

연결 문자열입니다 : // heroku_td9xx269 : [email protected] : 39725/heroku_td9xx269

"db": { 
    "type": "mongo", 
    "servers": [ 
     'mongodb://heroku_td9xx269:[email protected]:39725' 
    ], 
    "name": "heroku_td9mdp69", 
    "authentication": { 
     "un": "heroku_td9xx269", 
     "pw": "vl3o3hsj6e61ib7kiaul0vsjrd", 
    }, 
    "writeConcern": 1, 
    "query_logging": false 
}, 

트릭은 dbuser를 키 "un"및 "name"필드의 값으로 사용하는 것입니다.

0

URL에 한 번, "name"속성에 한 번씩 DB 이름을 두 번 정의하는 것처럼 보입니다. URL에서 DB 이름을 제거하십시오. 예를 들어

MongoDB를 : // 헤라클레스 : [email protected] : 63330/

대신 MongoDB를

의 : // 헤라클레스 : [email protected] : 63330/pencilbluedb

그리고 연필 블루는 연결할 때 DB 이름을 추가해야합니다.