Drupal, openSUSE и PHP 5.3

Как уже многим известно, использование Drupal с PHP 5.3 влечет серьезную головную боль в виде неработающих модулей, постоянных warning-ов и ошибок в отчетах, необходимости патчить код тут и там и, соответственно, отслеживать каждый патч при обновлении. В общем, ничего хорошего.

Но в команде openSUSE явно собрались новаторы - из репозиториев openSUSE 11.2 можно установить только PHP 5.3. В результате разрабатывать что-либо под Drupal на локалхосте openSUSE 11.2 практически невозможно. Но мир не без добрых людей. Badzilla написал подробное руководство, по которому легко скатиться до PHP 5.2. Проверял - работает отлично.

Краткий перевод порядка действий:

  1. Снести в yast все установленные пакеты php (не забудьте сохранить список).
  2. Отключить все репозитории openSUSE 11.2.
  3. Включить репозиторий http://download.opensuse.org/update/11.1/
  4. Установить с него пакеты php из списка, сохраненного на шаге 1.
  5. Вернуть право executable для /usr/lib/apache2/mod_php5.so.
  6. Добавить модуль в список запускаемых модулей апачи в /etc/sysconfig/apache2.
  7. Задать mysql.default_socket и mysqli.default_socket равными /var/run/mysql/mysql.sock в /etc/php5/apache2/php.ini.
  8. Перезапустить апач.
  9. Отключить репозиторий, включенный на шаге 3, восстановить репозитории, отключенные на шаге 2.

Спасибо, Badzilla.

GiNeR (гость)
Аватар пользователя GiNeR

Заглянул на сайт Drupal - действительно, официально php 5.3 не поддерживается. Посмотрел в Ubuntu 9.10 - php 5.2. Проверил у себя в арче - php 5.3 (кто бы сомневался), но есть пакет, который называется php52 (видимо не одному тебе нужно было :)). Кроме того, в Archlinux несмотря на то, что в репозитории пакеты всегда только последних версий, практически всегда есть возможность откатиться назад, хоть на php 4, хоть раньше.

PS: прикрути OpenID или рассылку на мыло для незарегистрированных пользователей. Сейчас я ответы от тебя никак не получаю.

graker
Аватар пользователя graker

Агитируешь? :) Не, я так и буду на СУСЕ сидеть. Потом Люсид выйдет, может на него перелезу.

OpenID это можно. Сделаю на днях. А рассылку для анонимов неохота делать.

graker
Аватар пользователя graker

Сделал OpenID, наслаждайся :)

GiNeR (гость)
Аватар пользователя GiNeR

"Агитируешь?" - да не, только для информации. На Арче не очень просто сидеть. т.к. он не релизов.
Спасибо за OpenID

GiNeR (гость)
Аватар пользователя GiNeR

Сделай плиз в комментах, чтобы "Домашняя страница" работало как OpenID.

GiNeR (гость)
Аватар пользователя GiNeR

Ха, не работает.
Sorry, that is not a valid OpenID. Please ensure you have spelled your ID correctly.

GiNeR (гость)
Аватар пользователя GiNeR

"т.к. он не релизов" -> "т.к. он не имеет релизов"

graker
Аватар пользователя graker

Что именно не работает? Валидный ли OpenID? У меня все работает, проверял.

Насчет домашней страницы не понял. Скорее всего это не предусмотрено и противоречит смыслу модуля OpenID.

graker
Аватар пользователя graker

Напиши свой OpenID сюда или мне в почту, вечером приду - проверю, что там как.

Гость (гость)
Аватар пользователя Гость

не сталкивались: откатился на php5.2
перезапускаю апач и из файла /etc/apache2/sysconfig.d
убивается строка LoadModule php5_module /usr/lib/apache2/mod_php5.so
после перезапуска апача, в чем прикол?

graker
Аватар пользователя graker

Не сталкивался, нет.

jedai (гость)
Аватар пользователя jedai

хехе, перегрузился - заработало!!

graker
Аватар пользователя graker

Вот и хорошо.

Кстати, у отката есть отрицательная сторона: надо внимательно следить за менеджером апдейтов, т.к. он будет постоянно пытаться пропихнуть апдейт апачи, который тянет за собой PHP 5.3.

jedai (гость)
Аватар пользователя jedai

в мастере НастройкиРепозитариец есть специальный репозитарий со всеми PHP версиями,
(Добавить -> репозитарии сообщества)
судя по всему не надо включать "3. Включить репозиторий http://download.opensuse.org/update/11.1/"
а достаточно включить специальный PHP репозитарий со всеми версиями:
openSUSE BuildService - PHP
download.opensuse.org
/repositories/server:/php/openSUSE_11.3/

graker
Аватар пользователя graker

У меня в описании PHP-репозитория (11.2) написано "latest updates".

Ну и посмотрел на файлики в репозитории - вижу там только php 5.3, предыдущих не видно. Может, не так понял чего.

jedai (гость)
Аватар пользователя jedai

чтобы при обновлении системы не обновлялся php достаточно сделать:
sudo zypper al php5

graker
Аватар пользователя graker

Вот блин, как я сам не додумался. Большое спасибо, камрад!

Ch (гость) (гость)
Аватар пользователя Ch (гость)

В ubuntu начиная с 10.04 тоже php 5.3 по умолчанию, аналогично в Debian 6.0.
http://www.nickveenhof.be/blog/reverting-or-downgrade-php-53-52-ubuntu-l...

Хотя, имхо, лучше друпал проапгрейдить, чем php даунгрэйдить. )

graker
Аватар пользователя graker

Когда пост писался, это был огромнейший геморрой — поди сам помнишь, чуть ли не в каждом серьезном модуле были патчи нужны.

Плюс сложно работать на локале с копиями уже запущенных сайтов, которые на PHP 5.2 стоят и используют модули с проблемами в PHP 5.3.

jedi (гость)
Аватар пользователя jedi

перешел на zend server - там выбираешь что ставить 5.2 или 5.2, и куча няшек) и шустрее пашет php

Отправить комментарий

CAPTCHA
Пройдите, пожалуйста, проверку. Она нужна, чтобы отличать людей от спам-роботов. А если не хотите проходить эту проверку регулярно — зарегистрируйтесь.
Image CAPTCHA
Введите цифры, изображенные на картинке (без пробелов).