Что бы в стандартный nginx из репозитория CentALT добавить еще один модуль ngx_cache_purge надо сделать некоторые изменения.
Для начала убедимся что у нас подготовлена среда для пересборки rpm
После чего, идем на сайт http://labs.frickle.com/nginx_ngx_cache_purge/ И качаем оттуда последнюю версию модуля.
# ~/rpmbuild/SOURCES # wget http://labs.frickle.com/files/ngx_cache_purge-1.4.tar.gz
После чего идем на страницу http://centos.alt.ru/repository/centos/6/SRPMS/ и качаем оттуда последнюю версия исходников от nginx и устанавливаем
# cd ~ # wget http://centos.alt.ru/repository/centos/6/SRPMS/nginx-1.1.7-1.el6.src.rpm # rpm -ivh nginx-1.1.7-1.el6.src.rpm
Оно у нас распакуется в наш домашний каталог в подготовленную среду ~/rpmbuild
Далее, для начала поправим файл спеки nginx
# mcedit ~/rpmbuild/SPECS/nginx.spec
Далее, по секциям.
В начале в SourceX: вклиниваем нашу Source12: ngx_cache_purge-1.4.tar.gz
Source0: http://sysoev.ru/nginx/nginx-%{version}.tar.gz Source1: %{name}.init Source2: %{name}.logrotate Source3: virtual.conf Source4: ssl.conf Source5: nginx-upstream-fair.tar.gz Source6: upstream-fair.conf Source7: %{name}.sysconfig Source8: nginx_upload_module-2.2.0.tar.gz Source9: Mod_zip-1.1.6.tar.gz Source10: masterzen-nginx-upload-progress-module-v0.8.2-1-g3d8e105.tar.gz Source11: ngx_http_auth_pam_module-1.2.tar.gz Source12: ngx_cache_purge-1.4.tar.gz Source21: GeoIPCountryCSV.zip Source100: index.html Source103: 50x.html Source104: 404.html Source200: nginx.pam
%description добавляем * ngx_cache_purge
%description Nginx [engine x] is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 proxy server written by Igor Sysoev. Following third party modules added: * nginx-upstream-fair * mod_zip * ngx_http_auth_pam_module * ngx_cache_purge
%prep добавляем %setup -T -D -a 12
%prep %setup -q %patch0 -p0 %patch1 -p0 %{__tar} zxvf %{SOURCE5} %setup -T -D -a 8 %setup -T -D -a 9 %setup -T -D -a 10 %setup -T -D -a 11 %setup -T -D -a 12 %setup -T -D -a 21
Ищем где начинается ./configure \ и строчку
--add-module=%{_builddir}/nginx-%{version}/ngx_http_auth_pam_module-1.2
Меняем на
--add-module=%{_builddir}/nginx-%{version}/ngx_http_auth_pam_module-1.2 \ --add-module=%{_builddir}/nginx-%{version}/ngx_cache_purge-1.4
Т.е. добавляем при запуске ./configure использовать наш модуль.
Документацию к модулю пихать в rpm не стал, лень было.
Теперь собираем
# cd ~/rpmbuild/SPECS/ # rpmbuild -ba nginx.spec
Если все собралось без ошибок, то в каталоге ~/rpmbuild/RPMS/x86_64 мы получаем на выходе nginx-1.1.7-1.el6.x86_64.rpm