PHP 애플리케이션에서는 LDAP(Lightweight Directory Access Protocol)를 사용하는 것이 매우 일반적입니다. 그러나 때로는 다음과 같은 오류 메시지가 나타날 수 있습니다.
PHP 치명적인 오류: 정의되지 않은 함수 ldap_connect() 호출
이 오류 메시지는 PHP 버전이 LDAP 확장을 로드하거나 활성화하지 않음을 나타냅니다. 이로 인해 사용자가 LDAP 서버에 연결하고 해당 작업을 수행할 수 없게 되기 쉽습니다.
이 기사에서는 이 오류 메시지를 해결하는 방법에 대해 설명합니다.
먼저 PHP 환경에서 LDAP 확장이 활성화되어 있는지 확인하세요. 다음을 통해 확인할 수 있습니다.
터미널을 열고 다음 명령을 실행합니다.
php -m | grep ldap
"ldap" 키워드의 출력이 표시되면 LDAP 확장이 활성화된 것입니다. 그렇지 않은 경우 활성화해야 합니다. 정확한 방법은 사용 중인 시스템 및 PHP 버전에 따라 다릅니다.
PHP 환경에서 LDAP 확장이 활성화되지 않은 경우 php.ini 파일을 편집하여 활성화할 수 있습니다. Linux 시스템에서 php.ini는 일반적으로 /etc/ 디렉터리에 있지만 Windows 시스템에서는 PHP 루트 디렉터리에 있습니다.
php.ini 파일을 열고 다음 줄을 찾으세요:
;extension=php_ldap.dll
앞의 세미콜론을 제거하고 확장자를 사용 중인 시스템에 해당하는 확장자로 변경하세요:
extension=php_ldap. so (Linux)
extension=php_ldap.dll (Windows)
파일을 저장하고 닫은 후 웹 서버를 다시 시작하세요.
LDAP 확장을 활성화했는데도 여전히 제대로 작동하지 않는 경우 웹 서버를 다시 시작해 보세요.
Linux 시스템에서는 다음 명령을 사용하여 Apache를 다시 시작할 수 있습니다.
sudo service apache2 restart
Windows 시스템에서는 다음 명령을 사용하여 IIS를 다시 시작할 수 있습니다.
iisreset
LDAP 확장이 활성화되어 있고 웹 서버를 다시 시작했지만 여전히 LDAP 서버에 연결할 수 없다면 LDAP 서비스를 사용할 수 없기 때문일 수 있습니다.
다음 명령을 사용하여 LDAP 서비스를 사용할 수 있는지 확인할 수 있습니다.
telnet your-ldap-server-hostname 389
출력이 다음과 비슷하면 LDAP 서비스를 사용할 수 있는 것입니다.
10.0.0을 사용해 보세요. 2.15...
your-ldap-server-hostname에 연결되었습니다.
Escape 문자는 '^]'입니다.
마지막으로 PHP 코드가 올바른지 확인해야 합니다. 맞다. ldap_connect() 함수가 호출되는 PHP 코드의 위치가 올바른지 확인하고 모든 매개변수가 올바른지 확인하세요. 함수를 호출하기 전에 LDAP 확장이 로드되었고 LDAP 서비스를 사용할 수 있는지 확인해야 합니다.
요약
"정의되지 않은 함수 ldap_connect() 호출"이라는 오류 메시지가 나타나면 위의 단계에 따라 하나씩 확인하세요. 먼저 LDAP 확장이 활성화되었는지 확인한 다음 php.ini 파일이 올바르게 구성되었는지 확인하세요. 둘째, 웹 서버를 다시 시작하고 LDAP 서비스를 사용할 수 있는지 확인해야 합니다. 마지막으로 PHP 코드가 올바른지 확인하세요. 위 단계에 따라 문제를 해결했지만 문제가 여전히 존재하는 경우 다른 유사한 확장 기능을 사용하거나 LDAP 인터페이스 라이브러리를 사용하는 것을 고려해 볼 수 있습니다.
위 내용은 PHP 치명적인 오류에 대한 해결 방법: 정의되지 않은 함수 ldap_connect() 호출의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!