Назад | Перейти на главную страницу

Установите Apache22 параллельно с существующей установкой Apache13 на FreeBSD

Я использую производственный сервер FreeBSD (6.3-STABLE) с установленным через порты apache13. По разным причинам мне нужно обновить его до apache22, предпочтительно также устанавливаемого через порты. Поскольку у меня очень короткий период обслуживания, я подумал об установке apache22 параллельно с apache13, его настройке и тестировании (на порту: 81 или около того), а затем просто переключиться во время обслуживания. (Бэкапы, конечно, есть).

Дело в том, что порт apache22 настроен на конфликт с apache13, и я не могу найти способ отменить это.

[root@desearth ~]# portupgrade -fNW www/apache22
...
===>  Installing for apache-2.2.13

===>  apache-2.2.13 conflicts with installed package(s):
      apache-1.3.34_4
      apr-db42-1.2.8_2

Также выполнение «make install» в каталоге / usr / ports / www / apache22 с параметром -DFORCE_PKG_REGISTER не работает по той же причине.

Есть идеи, как обойти это?

Я глупый. Меня всегда больше беспокоили файлы конфигурации в / usr / local / etc / apache *, но никогда не думал о двоичных файлах (например, httpd и apachectl). Конечно, они окажутся в одном и том же месте, для чего и предназначен CONFLICT в Makefile портов.

Одно из решений, предложенных мне вне serverfault, заключалось в использовании тюрьмы, тестировании конфигурации apache22 и последующем переключении на действующей системе. Кажется, это правильный путь.

Вы также можете указать PREFIX для установки apache в другой каталог, например / usr / local / apache22, например:

make PREFIX=/usr/local/apache2