Atualmente, tenho o Nginx instalado através das instruções no site do Nginx:
nginx=stable
sudo su -
add-apt-repository ppa:nginx/$nginx
apt-get update
apt-get install
Eu configurei o Nginx e ele está funcionando muito bem há um tempo. Agora, quero adicionar alguns módulos personalizados - por exemplo, o Upload Progress Module . As instruções para este módulo dizem para adicionar --add-module=path/to/nginx_uploadprogress_module
ao seu ./configure
comando. No entanto, não instalei o Nginx a partir da fonte.
Qual é a melhor maneira de lidar com essa situação? É possível dizer ao APT para compilar a partir da fonte e passar as opções para ./configure
? Posso compilar sobre a instalação existente? E os caminhos - como os faço corresponder? Ou tenho que remover a versão gerenciada do APT e começar de novo?
nginx
apt
package-management
Michelle Tilley
fonte
fonte
apt-cache search
?Respostas:
Instale o dpkg-dev:
Adicionar repositório:
Edite
/etc/apt/sources.list.d/nginx-stable-lucid.list
, adicione dpkg-src:note: (a etapa anterior pode já ter sido executada automaticamente no Ubuntu> = 12.04 - certifique-se de mudar
lucid
para refletir sua versão)Sincronize novamente os arquivos de índice do pacote:
Obter fontes:
Construir dependências:
Edite nginx-0.8.54 / debian / rules:
Pacote de compilação:
Instale pacotes:
fonte
sudo dpkg --install nginx-full_0.8.54-4ppa4~lucid_i386.deb
eu estou recebendonginx-full depends on nginx-common (= 0.8.54-4ppa4~lucid); however: Package nginx-common is not installed.
, no entanto,sudo dpkg --install nginx-common_0.8.54-4ppa4~lucid_all.deb
está dandodpkg: error processing nginx-common_0.8.54-4ppa4~lucid_all.deb (--install): trying to overwrite '/usr/share/nginx/www/50x.html', which is also in package nginx 0:0.8.54-4ppa2~lucid
. Como você recomendaria resolver esse problema?apt-get
/dpkg
e também outros pacotes que você instalar viaapt-get
saberão quenginx
está instalado e não solicitarão que você o instale. Se você o instalou diretamente da fonte, não o conseguirá.dpkg-buildpackage -uc -us
vez dedpkg-buildpackage -b
. Caso contrário, os arquivos .deb não serão criados.Desde o squeeze no Debian e o oneric no Ubuntu, existem alguns (como
headers-more-module
eu precisava) emfonte
A instalação do Nginx a partir da fonte é necessária se você deseja adicionar / (módulo de terceiros) extra. Se instalado via fonte, o Nginx não pode ser usado como serviço e o logrotate não é configurado para o Nginx. Siga este método para instalá-lo com todas as funcionalidades que você obtém da instalação via
apt-get
fonte
Um doce artigo que pode ser lido aqui explicará as informações detalhadas sobre a compilação de módulos no nginx. Basicamente, você precisa recompilar o nginx sempre que quiser instalar um módulo.
Também semelhante a este método também funcionará.
fonte