Master-X
Форум | Новости | Статьи
Главная » Форум » Хостинги / Домены / Железо » 
Тема: Сборка php 5.2.17
цитата
10/07/15 в 02:17
 DanilBD
Доброго времени суток!
Помогите собрать php 5.2.17, пожалуйста. Никак не получается сделать это самому..
На сервере стоит новый php, панель Vesta.
Старая версия пхп нужна для движка. С новыми пхп движек не здраво дружит.

Я гуглил, невероятно, но 2 дня мучения и поиска ни к чему не привели. Все это потому что плохо знаю сервера.

ОСь на сервера стоит Debian 7.5 (Wheezy) (64bits).

Всем хорошего настроения!
цитата
10/07/15 в 06:09
 MaxGMG
Могу посоветовать толкового админа, все сделает в лучшем виде дешево.
Если надо пиши контакты в личку.
цитата
10/07/15 в 11:39
 Stek
Написал бы сами ошибки или в чем затык. Сомневаюсь, что то кто сам будет у себя поднимать весту и ставить версию пхп, что бы сделать мануал по шагам.
цитата
10/07/15 в 11:55
 DanilBD
На форуме Vesta мне посоветовали собрать версию пхп из исходников и подключить ее руками. Типа так будет лучше для самой Весты. Но не подсказали как ее собрать.

Вот теперь не ясно, версию пхп, которая уже стоит удалять не надо?

Пытался устанавливать php 5.2.17 таким методом:
- Установка модулей:
apt-get install libxml2-dev libmysqlclient-dev libcurl4-gnutls-dev libpng12-dev libjpeg62-dev make libxslt1-dev libbz2-dev libmcrypt-dev libmhash-dev libfcgi-dev libmhash-dev

- Создание символических ссылок:
ln -s /usr/lib/i386-linux-gnu/libjpeg.a /usr/lib/libjpeg.a
ln -s /lib/i386-linux-gnu/libpng12.so.0.49.0 /usr/lib/libpng.so
ln -s /usr/lib/i386-linux-gnu/libmysqlclient.so.18.0.0 /usr/lib/libmysqlclient.so

- Загрузка, распаковка, запуск установки пхп:
wget http://museum.php.net/php5/php-5.2.17.tar.gz
tar -xzf php-5.2.17.tar.gz -C /tmp
cd /tmp/php-5.2.17/

- Сборка пхп:
./configure --prefix=/opt/php5.2 --with-config-file-path=/opt/php5.2 --with-mysqli --with-mysql --with-curl --with-gd --with-jpeg-dir --enable-cli --enable-fastcgi --enable-discard-path --enable-force-cgi-redirect --enable-mbstring --with-mcrypt

И после окончания сборки была ошибка:
Configure: error: libjpeg.(also) not found.
Которую решал так:
apt-get install libjpeg libjpeg-devel
Но ошибка не решилась..

В целом метод сборки правильный? Как же устранить ошибку?

И такой вопрос: есть ли команды, который подчистую удаляют все установленные программы\пакеты кроме файлов ОС и самой ОС? Т.е. делают ОС чистой-чистой. В гугле толкового не нашел.
цитата
10/07/15 в 16:21
 Stek
На убунте 12 так нужные библиотеки для сборки пхп и прочего софта.

Код:

apt-get update
apt-get install build-essential
apt-get install libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
apt-get install python-imaging
apt-get install libjpeg-dev
apt-get install libjpeg62-dev
apt-get install byacc flex
apt-get install libcurl3 libcurl4-openssl-dev
apt-get install libpng12-0 libpng12-dev

apt-get install mysql-server mysql-client libmysqlclient-dev
apt-get install git mercurial

Исправляем ссылки библиотек
ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/
ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/
ln -s /usr/lib/`uname -i`-linux-gnu/libz.so /usr/lib/
цитата
10/07/15 в 17:09
 DanilBD
Когда правим ссылки, то в ответ на эту:
ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/
пишет:
ln: failed to create symbolic link `/usr/lib/libjpeg.so': File exists

Хотя пакеты поставил
apt-get install libjpeg-dev
apt-get install libjpeg62-dev
установились

Что делать?
цитата
10/07/15 в 21:28
 Stek
DanilBD писал:
File exists

Файл есть, значит дополнительно линковать не надо.

Я для себя пхп собираю так :

Код:
./configure \
--enable-fpm \
--with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --sysconfdir=/etc  \
--with-zlib \
--with-openssl \
--enable-bcmath \
--enable-mbstring \
--enable-mbregex \
--enable-sockets \
--with-curl \
--with-mcrypt \
--with-gd=shared \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--enable-zip=shared \
--enable-exif=shared \
--enable-ftp=shared \
--enable-soap=shared \
--with-gettext=shared \
--with-mysql=shared \
--with-mysqli=shared \
--enable-mysqlnd \
--enable-pdo \
--with-pdo-pgsql=/usr/pgsql-9.3/bin \
--with-pgsql=shared \
--with-pdo-mysql \
--with-pdo-sqlite \
--with-xsl=shared  \
--with-libdir=/lib/x86_64-linux-gnu \
--with-readline \
--disable-cgi 


и на убунте и на центос собирается без проблем. Ну только лишние тебе ключи можешь выкинуть и добавить свои.
цитата
11/07/15 в 02:43
 Pentarh
Ты в опции --with-jpeg-dir укажи диру либджпег да?

--with-jpeg-dir=/usr/lib

Или где она у тебя там? Так же и другие опции поуказывай. И после ручного копирования/линкования сошек ldconfig запускай.
цитата
11/07/15 в 13:20
 DanilBD
Ребята, я поступил по другому. По дурному конечно же. icon_mad.gif

Попался на инструкцию: http://www.xyberry.com/customer-area/knowledgebase.php?action=displayarticle&id=85

Установил centos, установил панель, дальше по инструкции выше, исправил пару ошибок (примеры ошибок для кентос: https://billing.adivohost.com/knowledgebase.php?action=displayarticle&id=3), и все получилось. Поменял кодировку апача.

PHP 5.2.17 работает, при phpinfo() выводится вся информация про пхп.

Осталось только обезопасить сервер. Проблемно, как мне кажется, но буду мучиться. icon_confused.gif

Всем кто отписался, большое спасибо!
цитата
14/07/15 в 16:16
 DanilBD
Всем доброго дня!
Извиняюсь за оффтоп.
Такой вопрос: почему при загрузке на сервер файла ближе к 200Кб выдается ошибка 500? Я так понимаю в настройке апача нужно что-то изменить. Картинки меньше 100Кб загружает. Картинки по МБ не грузит.

Я выставил:
upload_max_filesize = 250М
max_file_uploads = 300
post_max_size = 250М
memory_limit = 400М
max_input_time = 120
max_execution_time = 60
output_buffering = 4096

Что еще может влиять на загрузку файлов?
цитата
14/07/15 в 16:43
 BMBon
сервер перезагрузили?
цитата
14/07/15 в 17:36
 DanilBD
apech перезагружал. Изменения были приняты в силу. Удостоверился по phpinfo();
цитата
14/07/15 в 18:21
 Stek
suhosin в апаче установлен ?
suhosin.post.max_value_length - увеличить в таком случае.

Вообще в логе апача должно быть более подробно об ошибке расписано.
цитата
14/07/15 в 23:33
 DanilBD
Stek писал:
suhosin в апаче установлен ?
suhosin.post.max_value_length - увеличить в таком случае.

Вообще в логе апача должно быть более подробно об ошибке расписано.


Этот пакет не установлен.

А при установке пишет:

Цитата:
[root@ns3767 ~]# yum install php-suhosin
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
* base: mirrors.ircam.fr
* epel: epel.mirrors.ovh.net
* extras: mirrors.ircam.fr
* updates: mirrors.ircam.fr
No package php-suhosin available.
Error: Nothing to do


Что делать?
В инете пишут что нужен php-devel, который тоже не установлен.
И тоже ошибка:
Цитата:
[root@ns3767 ~]# yum install php-devel
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
* base: mirrors.ircam.fr
* epel: epel.mirrors.ovh.net
* extras: mirrors.ircam.fr
* updates: mirrors.ircam.fr
Resolving Dependencies
--> Running transaction check
---> Package php-devel.x86_64 0:5.3.3-46.el6_6 will be installed
--> Processing Dependency: php(x86-64) = 5.3.3-46.el6_6 for package: php-devel-5.3.3-46.el6_6.x86_64
--> Finished Dependency Resolution
Error: Package: php-devel-5.3.3-46.el6_6.x86_64 (updates)
Requires: php(x86-64) = 5.3.3-46.el6_6
Installed: php-5.4.43-1.el6.remi.x86_64 (@remi)
php(x86-64) = 5.4.43-1.el6.remi
Available: php-5.3.3-38.el6.x86_64 (base)
php(x86-64) = 5.3.3-38.el6
Available: php-5.3.3-40.el6_6.x86_64 (updates)
php(x86-64) = 5.3.3-40.el6_6
Available: php-5.3.3-46.el6_6.x86_64 (updates)
php(x86-64) = 5.3.3-46.el6_6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest


Что посоветуете?
цитата
14/07/15 в 23:40
 Stek
если пакет не установлен, то и не ставь.
Вообще загляни в лог вэб сервера, что именно он там пишет в 500 ошибке.
цитата
15/07/15 в 00:56
 DanilBD
Где эти логи?
По /var/log/httpd/error_log нет ничего похожего и даты старые.
цитата
16/07/15 в 00:13
 DanilBD
Знаю что проблема в php версиях. В 5.2.17 не грузится файл, а в 5.4.43.
Сравнивал конфиги php.ini, но никакие изменения не привели к положительному результату facepalm.gif
цитата
19/07/15 в 18:03
 DanilBD
Дело было в FcgidMaxRequestLen.
Проблема решена! Может кому-то понадобится..
цитата
28/07/15 в 22:33
 color
да оно ж сто лет не поддерживается уже и возможно дырявое )


Эта страница в полной версии