Ошибка заголовка ELF и построение модулей в Apache для Jelastic
Поэтому я создаю веб-приложение и решил перенести его с локального хоста на Jelastic
, Приложение требует один пользовательский модуль: mod_auth_cas
, Я следовал инструкциям на сайте Jelastic для добавления модуля.
Единственным шагом, который я не выполнил, была компиляция модуля против 2.2.15. Я попытался настроить эту версию, но я не мог понять, как запустить ее одновременно с версией 2.2.24, на которой мой Mac работает изначально. Я полагал, что модуль, который работал с 2.2.24, должен работать с 2.2.15.
Я загрузил.so файл в Jelastic
сервер и добавил следующее LoadModule
команда для файла httpd.conf:
LoadModule auth_cas_module /usr/lib64/php/modules/mod_auth_cas.so
и перезапустил Apache. Я получил следующую ошибку:
Failed to start
Stopping httpd [ OK ] Starting httpd
Jelastic autoconfiguration mark httpd
Syntax error on line 161 of /etc/httpd/conf/httpd.conf
Cannot load /usr/lib64/php/modules/mod_auth_cas.so into server
/usr/lib64/php/modules/mod_auth_cas.so invalid ELF header [FAILED]
Из проведенного мною исследования казалось, что эта ошибка возникает, когда "установка" повреждена "или кто-то установил что-то для неправильного процессора / двоичного типа".
Поэтому я пытаюсь понять, что делать. Мне либо нужно выяснить, как установить Apache 2.2.15 и скомпилировать модуль, либо мне нужно выяснить, что я делаю неправильно на Jelastic
сторона, или мне нужно выяснить, почему файл.so поврежден. Какой это, и как мне это сделать?
2 ответа
На самом деле проблема в разных платформах.
Модуль был скомпилирован для правильной платформы и установлен для вас.
К вашему сведению: чтобы использовать этот модуль, мы создали файл cas.conf в conf.d, пожалуйста, откройте этот файл и измените его соответствующим образом.
Я рекомендую вам обратиться к вашему хостинг-провайдеру и попросить его скомпилировать этот модуль для вас. Скорее всего, проблема вызвана этим (компиляция в другой системе / системе, которая слишком непохожа), иначе это, по крайней мере, первое, что нужно исключить.