Как установить libpdf для PHP
Сегодня хочу Вам рассказать как установить libpdf для php. Начнем с того что это вообще, это PHP библиотека для работы с PDF файлами и генерирования PDF страниц посредством PHP скриптов. Ставить эту либу мы будем вручную.
Скачать libpdf можно например вот с этого сайта.
Теперь нам нужно Выбрать платформу нашей системы и пакет для которого нам эта библиотека нужна. Как Вы видите она доступна для C, C++, Java, Perl, Python, Tcl, Ruby, .NET
Под руками у меня CentOS 5.4 x86_64Bit, так что выбираю ответствующую ячейку и качаю.
[~]# cd /usr/local/src/
[/usr/local/src]# wget http://www.pdflib.com/binaries/PDFlib/705/PDFlib-7.0.5-Linux-x86_64-php.tar.gz
—2010-05-14 20:16:44— http://www.pdflib.com/binaries/PDFlib/705/PDFlib-7.0.5-Linux-x86_64-php.tar.gz
Resolving www.pdflib.com… 87.106.23.64
Connecting to www.pdflib.com|87.106.23.64|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 15678429 (15M) [application/octet-stream]
Saving to: `PDFlib-7.0.5-Linux-x86_64-php.tar.gz’
100%[===============================================================
==============================================>] 15,678,429 1.10M/s in 15s
2010-05-14 20:16:59 (1.01 MB/s) — `PDFlib-7.0.5-Linux-x86_64-php.tar.gz’ saved [15678429/15678429]
Расспаковываем
[/usr/local/src]# tar -xzf PDFlib-7.0.5-Linux-x86_64-php.tar.gz
Переходим в интересующую нас папку
[/usr/local/src]# cd PDFlib-7.0.5-Linux-x86_64-php/bind/php5/
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5]# ls | grep ^php
php-510/
php-520/
php-520mt/
php-530/
php-530mt/
Так, мы уже почти у цели, осталось определить версию PHP используемую в вашей систему и выбрать нужную версию libpdf. Проверяем
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5]# php -v
PHP 5.2.13
5.2.13 тобиж наша папка это php-520/
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5]# cd php-520/
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5/php-520]# ls -a
./ ../ libpdf_php.so*
А вот и наш бинарник. Все осталось сделать, так это скопировать его в папку с пхпшными экстеншинами и прописать в php.ini
Посмотрите значение extension_dir в своем php.ini
Если по каким-то причинам оно Вам неизвестно, выполните следующее
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5/php-520]# whereis php.ini
php: /usr/bin/php /usr/lib/php /usr/lib/php.ini /usr/local/bin/php /usr/local/lib/php /usr/local/lib/php.ini,v /usr/local/lib/php.ini /usr/include/php
Ищем значение в php.ini
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5/php-520]# cat /usr/lib/php.ini | grep extension_dir
extension_dir = «/usr/local/lib/php/extensions/no-debug-non-zts-20060613″
Ну вот, расширения для php лежат вот в этой папке
/usr/local/lib/php/extensions/no-debug-non-zts-20060613
Копируем сюда бинарник libpdf
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5/php-520]# scp libpdf_php.so /usr/local/lib/php/extensions/no-debug-non-zts-20060613
(Можете оставить libpdf_php.so здесь или скопировать в любую другую папку, но если всунуть ее в рабочий фолдер php это будет удобнееи как бы «правильно»)
Дальше ставим права и овнера (в большинстве случаем они и так стоят правильные, но как вариант)
[/usr/local/src/PDFlib-7.0.5-Linux-x86_64-php/bind/php5/php-520]# cd /usr/local/lib/php/extensions/no-debug-non-zts-20060613
[/usr/local/lib/php/extensions/no-debug-non-zts-20060613]# chmod 755 libpdf_php.so
[/usr/local/lib/php/extensions/no-debug-non-zts-20060613]# chown root. libpdf_php.so
Осталось дописать всего 1 строчку в php.ini и перезапустить Apache
extension=libpdf_php.so
[~]# /etc/init.d/httpd restart
Теперь при проверке php info (<?phpinfo();?>) у Вас будет выводится информация о PDF



Здорово, мне как раз нужно было для моего сайта kinourl.info
Помогло очень.