Nginx est actuellement installé via les instructions du site Nginx:
nginx=stable
sudo su -
add-apt-repository ppa:nginx/$nginx
apt-get update
apt-get install
J'ai configuré Nginx et il fonctionne très bien depuis un moment. Maintenant, je veux ajouter des modules personnalisés - par exemple, le module de progression de téléchargement . Les instructions pour ce module disent d'ajouter --add-module=path/to/nginx_uploadprogress_module
à votre ./configure
commande. Cependant, je n'ai pas installé Nginx à partir des sources.
Quelle est la meilleure façon de gérer cette situation? Est-il possible de dire à APT de compiler à partir de la source et de passer des options à ./configure
? Puis-je compiler sur l'installation existante? Qu'en est-il des chemins - comment puis-je les faire correspondre? Ou dois-je supprimer la version gérée APT et recommencer?
la source
apt-cache search
?Réponses:
Installez dpkg-dev:
Ajouter un référentiel:
Editez
/etc/apt/sources.list.d/nginx-stable-lucid.list
, ajoutez dpkg-src:remarque: (l'étape précédente a peut-être déjà été effectuée automatiquement sur Ubuntu> = 12.04 - assurez-vous également que vous modifiez
lucid
votre version)Resynchronisez les fichiers d'index du package:
Obtenir des sources:
Construire des dépendances:
Éditez nginx-0.8.54 / debian / rules:
Paquet de construction:
Installer les paquets:
la source
sudo dpkg --install nginx-full_0.8.54-4ppa4~lucid_i386.deb
je reçois,nginx-full depends on nginx-common (= 0.8.54-4ppa4~lucid); however: Package nginx-common is not installed.
cependant,sudo dpkg --install nginx-common_0.8.54-4ppa4~lucid_all.deb
c'est donnerdpkg: 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
. Comment recommanderiez-vous la résolution de ce problème?apt-get
/dpkg
, et les autres packages que vous aurez installés viaapt-get
sauront que celui-cinginx
est déjà installé et ne vous demandera pas de l'installer. Si vous l'avez installé directement depuis la source, vous ne l'obtiendrez pas.dpkg-buildpackage -uc -us
place dedpkg-buildpackage -b
. Sinon, les fichiers .deb ne seront pas créés.Depuis compression dans Debian et depuis Oneric dans Ubuntu, il y a certains (comme
headers-more-module
je avais besoin) dansla source
L'installation de Nginx à partir du code source est nécessaire si vous souhaitez y ajouter un module supplémentaire (/ module tiers). Si installé via la source, Nginx ne peut pas être utilisé en tant que service et logrotate n'est pas configuré pour Nginx. Suivez cette méthode pour l’installer avec toutes les fonctionnalités que vous obtenez de l’installation via
apt-get
la source
Un doux article qui peut être lu ici expliquera les informations détaillées sur la compilation de modules dans nginx. Fondamentalement, vous devez recompiler le nginx chaque fois que vous souhaitez installer un module.
Aussi similaire à cette méthode fonctionnera également.
la source