У мене є два побічні проекти, які я хотів би виконати на роботі:
- Увімкніть користувачів wiki для автентифікації на корпоративному сервері Active Directory (LDAP).
- Налаштуйте інструмент перегляду коду для моєї команди розробників.
Ось проблема. Сервер Linux, на якому знаходяться інструменти, має версію PHP, у якій немає компільованого LDAP, а сервер Apache чомусь відсутній mod_proxy_html.
Якби я працював у Windows, я завантажував би відповідні модулі, кидав їх у каталог ext або module, відбивав сервер, а потім продовжував займатися своїм бізнесом. Однак у Linux, здається, єдиний мій варіант - перекомпілювати PHP (для бібліотек LDAP) або самостійно скласти модуль mod_proxy_html та всі його залежності.
Тепер я знаю, про що ви, мабуть, думаєте: "Чому ви просто не використовуєте менеджер пакунків для встановлення модулів?" Це справедливе питання.
- Сервер може отримати доступ до загальнодоступного Інтернету лише через проксі-сервер зі списком білих списків
. (Адже це інтранет-сервер.) - Apache та PHP, що працюють на сервері, є з пакету LAMP. Вони не контролюються YUM, RPM або будь-яким іншим 3-літерним абревіатурою.
Мені вдалося скласти PHP з нуля, але не обійшлося без гарного шматка як-гоління . Мені довелося завантажувати і компілювати 4 або 5 залежностей, перш ніж я зміг скласти PHP з бібліотеками LDAP, і навіть тоді, в make test
основному, сказав: "Ей, приятелю. Я знаю, що ти пережив чимало клопотів, щоб скласти це, але це виглядає як-небудь привабливо Удачі, хоча! "
Отже, моє запитання: чому це потрібно? Чому я не можу просто завантажити попередньо складену (статично скомпільовану?) Версію потрібних мені бібліотек / модулів, поставити їх на місце, Apache і PHP можуть побачити їх, перезапустити сервер Apache і продовжувати свій веселий шлях.