내 웹 호스트의 기술 지원 팀에 따르면 pecl 설치 프로그램을 사용하면 계정 아래에만 확장 기능을 설치하는 대신 서버 전체에 확장 기능을 설치하려고합니다. 내 웹 호스트는 보안상의 이유로 공유 환경에서 서버 전체 설치를 허용하지 않으며 전체적으로 항공기를 동일하게 유지하기를 원하기 때문입니다. 네 주인이 같다고 생각해.
$ cd ~/
$ wget http://pecl.php.net/get/pecl_http
$ tar -zxvf pecl_http.tar.gz
$ cd pecl_http
$ phpize
$ ./configure --prefix=~/bin
$ make
$ make test
$ make install
성공적인 설치 :
그러나, 그들은을 다운로드 제안 구성하고 내 계정에있는 PECL 패키지 (pecl_http)를 설치하는 경우에만 (이 아닌 서버 전체) 다음과 같은 수동 프로세스를 통해 한 extname.so가 생성되어 PHP 확장 디렉토리에 저장됩니다. php.ini 파일을 편집해야합니다 (내 경우 확장자를 사용하는 스크립트와 동일한 폴더에있는 표준 php.ini 파일의 사본입니다) extension=extname.so
줄을 추가하십시오. 사례, extension=http.so
)를 사용하기 전에 확장 프로그램을 사용할 수 있습니다. 위의 코드에서 ~ 문자 (~
가) 현재 사용자의 홈 디렉토리를 참조하는 http://www.php.net/manual/en/install.pecl.phpize.php
주 (예를 들어 /home/username
내 호스트의 서버에). pecl_http은 파일 확장자없이 다운로드 한대로 오류 나타난 다음 tar
명령을 사용하는 경우
문제는 당신은 "디렉토리가 아닌이 을 열 수 없습니다"
으로 실행할 수 있습니다. 이 쉽게 수정되었습니다
mv pecl_http pecl_http.tar.gz
make install
명령, 사용 errror 나타났다 "은 cp : 일반 파일을 만들 수는 ... 권한 거부". 나는 PECL에 대한 ext_dir
을 변경하여이 문제 를 해결 ...
pecl config-set ext_dir /home/username/bin/extensions
... 그리고 make install
을 다시 실행. 나는 또한 /home/username/bin/extensions
에 http.so 확장을 복사하고 내 PHP에서 해당 위치를 참조했다.이 파일 :
extension_dir = "/home/username/bin/extensions"
출처
2012-10-05 16:51:47
w5m