2017-01-18 5 views
0

VPS (PHP 5.6.29)에서 litespeed 5.1.11을 실행 중입니다. 내 PHP 코드에서 cUrl을 사용합니다. 웹 페이지로 탐색 할 때 코드를 실행할 때 모든 것이 제대로 작동하지만 명령으로 실행하면 오류가 발생합니다.
Fatal error: Call to undefined function curl_init()
어떻게 해결할 수 있습니까?litespeed - 치명적 오류 : 정의되지 않은 함수를 호출했습니다. curl_init()

나는이 구성 매개 변수 내 PHP를 컴파일

'./configure' '--prefix=/usr/local/lsws/lsphp5' '--disable-fileinfo' '--with-bz2' '--enable-zip' '--with-curl' '--with-mysql' '--with-mysql-sock' '--with-sqlite' '--with-tidy' '--with-xpm-dir' '--enable-pdo' '--with-pdo-sqlite' '--with-pdo-mysql' '--enable-bcmath' '--enable-calendar' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-soap' '--with-gettext' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-mcrypt' '--with-mysqli' '--with-openssl' '--with-pic' '--with-png-dir' '--with-zlib' '--with-pcre-regex' '--with-gd' '--enable-shmop' '--enable-track-vars' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-magic-quotes' '--enable-mbstring' '--with-iconv' '--enable-json' '--with-litespeed'

그리고 컬 섹션은 phpinfo에서 : 당신이 당신의 PHP를 컴파일 한 후

+1

두 개의 PHP 엔진을 사용하고있는 것처럼 들리 겠지만 하나는 "웹 ​​페이지"이고 다른 하나는 http 서버 내부의 모듈이고 다른 하나는 "명령"입니다. 따라서 CLI 버전입니다. 일반적으로 별도의 구성이 있습니다. 아마도'cURL'은 CLI 버전으로로드/활성화되지 않았을 것입니다. – arkascha

+0

@arkascha 의견을 주셔서 감사합니다. 나는이 명령을 사용한다 :'/ usr/local/bin/lsphp/my/code.php'. 'CLI' 설정 파일을 어떻게 찾을 수 있습니까? –

+1

엔진이 제공 한 정보로부터 경로를 얻습니다 :'/ usr/local/bin/php -i | grep php.ini' – arkascha

답변

0

나는 내 문제를 해결한다. 이 내용을 Configure Parameters에 추가해야합니다.

'--exec-prefix=/usr' '--with-exec-dir=/usr/bin'

지금 나는이 구성 매개 변수 내 PHP를 컴파일

--disable-fileinfo --with-bz2 --enable-zip --with-curl --with-mysql --with-mysql-sock --with-sqlite --with-tidy --with-xpm-dir --enable-pdo --with-pdo-sqlite --with-pdo-mysql --enable-bcmath --enable-calendar --enable-ftp --enable-gd-native-ttf --enable-libxml --enable-soap --with-gettext --with-jpeg-dir=/usr --with-kerberos --with-mcrypt --with-mysqli --with-openssl --with-pic --with-png-dir --with-zlib --with-pcre-regex --with-gd --enable-shmop --enable-track-vars --enable-sockets --enable-sysvsem --enable-sysvshm --enable-magic-quotes --enable-mbstring --with-iconv --enable-exif --enable-ucd-snmp-hack --enable-xml --enable-json --libdir=/usr/lib64 --with-libdir=lib64 --exec-prefix=/usr --with-exec-dir=/usr/bin --with-freetype-dir=/usr --with-pcre-regex=/usr --with-gmp --with-layout=GNU --with-system-tzdata --with-apxs2=/usr/sbin/apxs --with-libxml-dir=/usr

는 지금, 나는 명령 줄 내 코드를 실행 /usr/bin/lsphp /my/code.php 또는 php /my/code.php를 사용합니다.

+1

https://rpms.remirepo.net/wizard/를보고 php-litespeed를 설치하십시오 ... 훨씬 더 간단합니다. –

+0

@RemiCollet Thanks. 나는 그것을 테스트하지만, 그것은 나를 보여줍니다.'No package php-litespeed available .' –

+0

https://rpms.remirepo.net/enterprise/6/php56/x86_64/repoview/php-litespeed.html –

1

, 당신은 모두 lsphp와 PHP 바이너리를 얻어야한다. 접두어가/usr/local/lsws/lsphp5 인 경우, 컴파일 된 바이너리는/usr/local/lsws/lsphp5/bin /에 있고, CLI의 경우 코드로 php를 시도하십시오.

/usr/지방/lsws/lsphp5/빈/php에 /my/code.php

/usr/지방/빈/lsphp 또는은/usr// 빈/PHP는 사람처럼 보이지 않는 지방 당신의 접두어 폴더에 있지 않기 때문에 컴파일됩니다.

또한 대부분의 사람들이 LiteSpeed ​​저장소 또는 Remi 저장소에서 RPM 패키지를 사용하기 때문에 PHP를 직접 컴파일해야하는 특별한 이유가 있는지 알 수 없습니다. 설치가 훨씬 쉬우 며 귀하의 권리를 획득해야합니다.

https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:php:rpm