Динамическая загрузка стороннего модуля nginx через шеф-повара - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь динамически загрузить сторонний модуль в nginx.

https://github.com/stnoonan/spnego-http-auth-nginx-module

Nginx устанавливается посредством установки пакета с использованием рецепта chef.

Я попытался скомпилировать модуль в двоичный файл .so файла и скопировал его в / etc /Каталог nginx / modules и добавил следующую строку в nginx.conf, но он показал ошибку «неизвестная директива load_module».

nginx.conf

load_module modules/ngx_http_auth_spnego_module.so ;

Рецепт шеф-повара

bash 'create_spnego_module' do
   code <<-EOH
    mkdir -p #{node['nginx']['dir']}/modules
   EOH
 end

cookbook_file "#{node['nginx']['dir']}/modules/ngx_http_auth_spnego_module.so" do
  source 'ngx_http_auth_spnego_module.so'
  owner  'root'
  group  node['root_group']
  mode   '0644'
  notifies :reload, 'service[nginx]', :delayed
end

Есть ли другой способ загрузить этот модуль через шеф-повар без перекомпиляции исходного кода nginx?

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Во время компиляции бинарного модуля аргументы конфигурации для компиляции модулей должны быть такими же, как у установленного nginx.

Используя аргумент командной строки 'nginx -V', проверьте аргументы конфигурации во время установки nginx.Используйте те же аргументы при компиляции модуля.

0 голосов
/ 20 сентября 2018

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

...