[REDIS] 치명적인 오류 : 찾을 수없는 클래스 '레디 스'
REDIS치명적인 오류 : 찾을 수없는 클래스 '레디 스'
나는 phpredis 확장 내 우분투 14 서버에 레디 스를 설치했습니다. Nginx에 서버를 사용하여 임. 나는 PHP 테스트 스크립트가
$redis=new Redis() or die("Cannot load Redis module.");
$redis->connect('localhost');
$redis->set('random', rand(5000,6000));
echo $redis->get('random');
웹 브라우저에서 명령 줄에서 미세하지만 작동된다.
Nginx의 오류 로그 :
[info] 31102#0: Using 32768KiB of shared memory for push module in /etc/nginx/nginx.conf:82
[error] 31108#0: *21 FastCGI sent in stderr: "PHP message: PHP Fatal error: Class 'Redis' not found in...
i)는 (심지어은 phpinfo에서 볼 수 없습니다
모든 설치 apt-get을 설치
다른 모든 모듈 (MySQL은, ImageMagick를 ...) 작업 좋은
내가 구글에 몇 시간을 소비했지만 유용한 아무것도 발견하지 않았습니다
해결법
-
==============================
1.당신은 레디 스하지만 PHP - 레디 스를 설치했습니다. PHP - 레디 스를 설치하려면 아래에 당신은 단순히 명령을 실행할 수 있습니다
당신은 레디 스하지만 PHP - 레디 스를 설치했습니다. PHP - 레디 스를 설치하려면 아래에 당신은 단순히 명령을 실행할 수 있습니다
sudo apt-get install php-redis
-
==============================
2.PHP는 레디 스의 수동 설치는이 문제를 해결
PHP는 레디 스의 수동 설치는이 문제를 해결
git clone git://github.com/nicolasff/phpredis.git cd phpredis phpize ./configure make sudo -s make install sudo -s echo "extension=redis.so">/etc/php5/conf.d/redis.ini ln -s /etc/php5/conf.d/redis.ini /etc/php5/fpm/conf.d/20-redis.ini exit
리코의 기술 메모에서 복사
-
==============================
3.TLDR; PHP 7의 nginx를 사용하여 우분투 16.04에 나는 PHP-FPM가 다시 시작되지 않았 음을 발견했다. 서비스의 간단한 재시작은 나를 위해 일한 : sudo는 서비스 PHP-FPM 다시 시작 또는 sudo는 서비스 php7.0-FPM 다시 시작 또는 sudo는 서비스 PHP5-FPM 다시 시작 당신은 위의 명령 중 하나가 당신을 위해 일을하지 않는 경우 "를 다시 시작 PHP-FPM"를 검색해야 할 필요가있다. 일부 컨텍스트를 제공하기 위해, 내가 사용 phpredis을 설치 한 표준 sudo는 apt-get을 phpredis를 설치하고 내가 사용 nginx를 다시 시작 sudo를 systemctl를 다시 시작 nginx를하지만, PHP I에서) 새로운 레디 스를 (사용하려고하는 질문과 동일한 오류가 발생 할 때마다 ( ... 클래스 '레디 스'는) ...를 찾을 수 없습니다. 하면은 phpinfo를 실행 (); 나는 PHP-FPM이 /etc/php/7.0/fpm/conf.d에서 추가 구성을로드 한 볼 수있는 Nginx에 서버의 PHP 파일 (섹션 "추가 .INI 파일이 디렉토리를 검색"). 내가 볼 수있는 간단한 1! -al /etc/php/7.0/fpm/conf.d와 그 디렉토리에 상대가 20 redis.ini라는 이름의 심볼릭 링크는 있지만 파일은 "추가 .INI은 phpinfo 섹션에서로드되지 않았습니다 파일은 "구문 분석. 지금 그것을보고 같은 문제의 nginx를 다시 시작하는 것은 PHP-FPM을 다시 시작하지 않은 것입니다. 추신 보조를 사용하여 | 내가 Nginx에 내 의심을 확인 정지했을 때 실행되는 PHP-FPM 과정이 있다면 그렙 PHP-FPM 확인합니다. 재시작은 PHP 모듈을 다시로드 할 필요가 있기 때문에, PHP-FPM 재시작은 Nginx의 재시작을 요구할 하였다.
TLDR; PHP 7의 nginx를 사용하여 우분투 16.04에 나는 PHP-FPM가 다시 시작되지 않았 음을 발견했다. 서비스의 간단한 재시작은 나를 위해 일한 : sudo는 서비스 PHP-FPM 다시 시작 또는 sudo는 서비스 php7.0-FPM 다시 시작 또는 sudo는 서비스 PHP5-FPM 다시 시작 당신은 위의 명령 중 하나가 당신을 위해 일을하지 않는 경우 "를 다시 시작 PHP-FPM"를 검색해야 할 필요가있다. 일부 컨텍스트를 제공하기 위해, 내가 사용 phpredis을 설치 한 표준 sudo는 apt-get을 phpredis를 설치하고 내가 사용 nginx를 다시 시작 sudo를 systemctl를 다시 시작 nginx를하지만, PHP I에서) 새로운 레디 스를 (사용하려고하는 질문과 동일한 오류가 발생 할 때마다 ( ... 클래스 '레디 스'는) ...를 찾을 수 없습니다. 하면은 phpinfo를 실행 (); 나는 PHP-FPM이 /etc/php/7.0/fpm/conf.d에서 추가 구성을로드 한 볼 수있는 Nginx에 서버의 PHP 파일 (섹션 "추가 .INI 파일이 디렉토리를 검색"). 내가 볼 수있는 간단한 1! -al /etc/php/7.0/fpm/conf.d와 그 디렉토리에 상대가 20 redis.ini라는 이름의 심볼릭 링크는 있지만 파일은 "추가 .INI은 phpinfo 섹션에서로드되지 않았습니다 파일은 "구문 분석. 지금 그것을보고 같은 문제의 nginx를 다시 시작하는 것은 PHP-FPM을 다시 시작하지 않은 것입니다. 추신 보조를 사용하여 | 내가 Nginx에 내 의심을 확인 정지했을 때 실행되는 PHP-FPM 과정이 있다면 그렙 PHP-FPM 확인합니다. 재시작은 PHP 모듈을 다시로드 할 필요가 있기 때문에, PHP-FPM 재시작은 Nginx의 재시작을 요구할 하였다.
from https://stackoverflow.com/questions/25230399/fatal-error-class-redis-not-found by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 레디 스 :: CommandError : ERR 클라이언트는 AUTH를 보냈지 만 암호가 설정되지 않습니다 (0) | 2020.01.22 |
---|---|
[REDIS] 평가없이 레디 스에서 개체를 얻을? (0) | 2020.01.22 |
[REDIS] 레디 스의 변화를 들어? (0) | 2020.01.22 |
[REDIS] 방법 레디 스의 pubsub 타임 아웃 기능을 구현하는 방법? (0) | 2020.01.22 |
[REDIS] 어떻게 소켓을 확인하는 방법은 여러 노드와 socket.io - 레디 스와 socket.io에 살아 (연결)이다 (0) | 2020.01.22 |