> 데이터 베이스 > Redis > php5.6이 redis.so를 확장할 수 없는 문제를 해결하는 방법

php5.6이 redis.so를 확장할 수 없는 문제를 해결하는 방법

WBOY
풀어 주다: 2023-05-30 10:21:44
앞으로
1353명이 탐색했습니다.

먼저 Redis가 무엇인지 알아보겠습니다. Redis는 문자열, 해시 테이블, 목록, 집합, 순서 집합 등 다양한 유형의 데이터를 저장하고 읽고 조작하는 데 사용할 수 있는 고성능 키-값 스토리지 데이터베이스입니다. 주로 메모리를 저장 매체로 사용하므로 Redis를 매우 빠르고 효율적으로 만듭니다.

Redis와 상호 작용하려면 redis.so 확장 또는 phpredis 확장을 설치하여 PHP의 기능을 확장할 수 있습니다. 이러한 확장은 다양한 API 기능을 제공하므로 개발자는 PHP 코드로 Redis에 쉽게 액세스할 수 있습니다. 그러나 일부 PHP 버전, 특히 php5.6에서는 이러한 확장 기능이 제대로 작동하지 못하게 하는 몇 가지 문제가 있습니다.

php5.6 버전을 사용 중이고 phpredis 확장을 설치 및 사용하거나 redis.so를 직접 확장하려고 하면 다음 오류 메시지가 나타날 수 있습니다.

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php5.6/modules/redis.so' - /usr/lib64/php5.6/modules/redis.so: undefined symbol: igbinary_serialize in Unknown on line 0
로그인 후 복사

이 오류 메시지는 PHP 버전에 igbinary가 포함되어 있지 않음을 의미합니다. 확장, 이 확장은 phpredis 확장의 종속성입니다. igbinary 확장을 사용하면 PHP 직렬화 및 역직렬화를 구현할 수 있는 Redis의 액세스 속도와 성능을 가속화할 수 있습니다.

이 문제를 해결하려면 먼저 igbinary 확장을 설치한 다음 phpredis 확장 또는 redis.so 확장을 설치해야 합니다. 구체적인 단계는 다음과 같습니다.

  1. igbinary 확장 설치
    igbinary 확장을 다운로드 및 컴파일한 후 PHP 확장 디렉터리에 설치합니다. GitHub에서 igbinary를 다운로드할 수 있습니다:


    $ git clone https://github.com/igbinary/igbinary.git
    $ cd igbinary
    $ phpize
    $ ./configure
    $ make
    $ sudo make install
    
    로그인 후 복사


    위 단계를 완료한 후 igbinary.so 파일을 PHP 확장 디렉터리에 복사하고 php.ini 파일에 다음 줄을 추가해야 합니다.


    extension=igbinary.so
    
    로그인 후 복사


  2. phpredis 확장 설치
    phpredis 확장을 다운로드하고 컴파일한 다음 PHP 확장 디렉토리에 설치하세요. GitHub에서 phpredis를 다운로드할 수 있습니다:


    $ git clone https://github.com/phpredis/phpredis.git
    $ cd phpredis
    $ phpize
    $ ./configure
    $ make
    $ sudo make install
    
    로그인 후 복사


    그런 다음 php.ini 파일에 다음 줄을 추가합니다:

    <code>extension=redis.so
    </code>
    로그인 후 복사


  3. redis.so
    확장 phpredis 확장을 사용하고 싶지 않고 redis.so를 직접 확장하려면 PHP 소스 코드를 컴파일하고 Redis 확장을 활성화해야 합니다. 구체적인 단계는 다음과 같습니다.

먼저 PHP 소스 코드를 다운로드하고 압축을 풉니다.

$ wget http://cn2.php.net/distributions/php-5.6.40.tar.gz
$ tar zxvf php-5.6.40.tar.gz
$ cd php-5.6.40
로그인 후 복사

그런 다음 ./configure 명령에서 Redis 확장을 활성화합니다.

$ ./configure --with-redis
로그인 후 복사

다음으로 make 명령을 사용하여 PHP 소스 코드:

$ make
로그인 후 복사

컴파일을 완료한 후 redis.so 파일을 PHP 확장 디렉터리에 복사합니다.

$ sudo cp modules/redis.so /usr/lib64/php5.6/modules/
로그인 후 복사

마지막으로 php.ini 파일에 다음 줄을 추가합니다.

extension=redis.so
로그인 후 복사

위 내용은 php5.6이 redis.so를 확장할 수 없는 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿