2017-05-24 2 views
1

mongodb를 PHP 응용 프로그램에 연결하려고 시도했지만이 오류가 발생합니다. 하지만 난 원격 몽고 요리사적절한 서버를 찾을 수 없습니다 (`serverSelectionTryOnce` 세트) : [TLS 핸드 셰이크 실패 : 14090086 : SSL 루틴 : SSL 루틴 : ssl3_get_server_certificate

찾을 수 없습니다 적합한 서버를 사용 할 수 있습니다 (serverSelectionTryOnce 세트) : TLS 핸드 쉐이크 실패 : 오류 : 14090086 : SSL 루틴 : ssl3_get_server_certificate를 : 인증서가 당신이 생각

답변

0

을 ismaster 전화 확인 실패 이 문제를 해결하는 3 가지 옵션. 당신이 리눅스를 사용하는 경우 서버에

1. 해제 SSL을

정상적으로는 net에서이 라인을 코멘트 #를 사용 /etc/mongod.conf에 위치한다, mongod.conf를 찾습니다. 마지막으로 변경 작업을하려면 mongodb을 다시 시작해야합니다.

net: ssl: mode: requireSSL PEMKeyFile: ./mongodb.pem ...

2.

은 사용이 옵션은 클라이언트

이 안전 솔루션이 아닙니다에 weak_cert_validation라고, 그러나 이것은 확실히 간단한 일 중 하나입니다. MongoDB의 서버가있는 경우

예를 들어, SSL을 사용하지만,하지 않고 (또는 did't) CA 인증서를 제공는 (자체 서명 된 인증서를 의미), 다음, 클라이언트 측에서 true로 C 클라이언트에 대한 예를 weak_cert_validation을 설정

3. configure-ssl을 따라 인증서를 만들고 프로그램에 서명하십시오.

일부 제공 업체 : https://en.wikipedia.org/wiki/Certificate_authority#Providers