четверг, 8 мая 2008 г.

Обновление PHP5

Продолжаю исправлять свои давние ошибки :) На этот раз обновление php5 и его расширений там, где затерлась системная БД с записями об установленных из портов программах.

  1. Соберем php5.
    cd /usr/ports/lang/php5 && make all
    Остановим apache2
    /usr/local/etc/rc.d/apache2 stop
    Ставим php5
    make install
  2. Теперь установим расширения php5.
    Список расширений находится в файле /usr/local/etc/php/extensions.ini. Остается лишь поиск в портах и установка. Для этой цели написал маленький скрипт.
    #!/bin/sh
    grep -oE '=[a-z]+' /usr/local/etc/php/extensions.ini | \
    sed -E 's/^./php5-/' | \
    while read pkg;
    do {
    cd /usr/ports;
    cd `make quicksearch name="^$pkg-" | \
    grep -oE '/usr/ports/.+$'` && make install;
    } done;
    Сохраняем его под именем php5-ext-inst.sh и делаем исполняемым
    chmod +x php5-ext-inst.sh
    Выполняем скрипт.
  3. После установки расширений запускаем apache2 и радуемся жизни :)
    /usr/local/etc/rc.d/apache2 start

3 комментария:

Gustik комментирует...

portupgrade "php5-*"

Князь комментирует...

Читаем внимательнее ..."где затерлась системная БД с записями об установленных из портов программах"...

Gustik комментирует...

Угу, не заметил =) извиняюсь