SSL 공급자 오류: PHP에서 신뢰할 수 없는 기관에 의해 MSSQL Server에 인증서 체인이 발급되었습니다.
P粉338969567
P粉338969567 2023-10-30 18:03:00
0
2
739

일단 저는 정말 멍청해요. (유감) 둘째, PHP를 mssql 서버에 연결하려고했습니다. 셋째, sqlsrv, pdo_sqlsrv 및 msodbcsql.msi를 설치했습니다. 그런데 연결하려고 하면 계속 오류 메시지가 나타납니다.

내 PHP 버전은 8.0.10, x64입니다. MSSQL 서버 2012.

연결 테스트를 위한 내 PHP 코드:

으아아아

그러다가 오류가 나서 msodbcsql.msi를 설치하라는 안내가 나와서 지시대로 설치했습니다. 하지만 해결할 수 없는 새로운 오류가 표시됩니다.

Array ( [0] => Array ( [0] => 08001 [SQLSTATE] => 08001 1 => -2146893019 [코드] => -2146893019 2 => [Microsoft][ODBC 드라이버 18 SQL Server의 경우] SSL 공급자: 신뢰할 수 없는 기관에서 인증서 체인을 발급했습니다. [메시지] => [Microsoft][SQL Server용 ODBC 드라이버 18] SSL 공급자: 신뢰할 수 없는 기관에서 인증서 체인을 발급했습니다. ; 배열([0] => 08001 [SQLSTATE] => 08001 1 => -2146893019 [코드] => -2146893019 2 => [Microsoft][SQL Server용 ODBC 드라이버 18 ]클라이언트가 연결을 설정할 수 없습니다. [메시지] => [Microsoft][SQL Server용 ODBC 드라이버 18]클라이언트가 연결을 설정할 수 없습니다) )

추가정보: dbeaver(다른 PC)를 mssql 서버(동일 서버)에 연결해도 문제가 없습니다.

미리 감사드립니다

P粉338969567
P粉338969567

모든 응답(2)
P粉545956597

ODBC 드라이버 18 대신 ODBC 드라이버 17을 사용했는데 문제가 해결되었습니다. 제 경우에는 암호화가 필요하지 않으므로 드라이버 17이 적합합니다.

P粉327903045

혹시 TrustServerCertificate1으로 정의하는 방법이 궁금하신 분들을 위해 저는 이렇게 해서 아래와 같이 매개변수를 새 배열 요소로 추가했습니다

으아아아
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿