Ich habe Nginx derzeit über die Anweisungen auf der Nginx-Site installiert:
nginx=stable
sudo su -
add-apt-repository ppa:nginx/$nginx
apt-get update
apt-get install
Ich habe Nginx konfiguriert und es läuft seit einiger Zeit großartig. Jetzt möchte ich einige benutzerdefinierte Module hinzufügen, z. B. das Upload-Fortschrittsmodul . In den Anweisungen für dieses Modul wird angegeben, dass --add-module=path/to/nginx_uploadprogress_module
der ./configure
Befehl hinzugefügt werden soll . Ich habe Nginx jedoch nicht von der Quelle installiert.
Was ist der beste Weg, um mit dieser Situation umzugehen? Ist es möglich, APT anzuweisen, aus der Quelle zu kompilieren und Optionen an zu übergeben ./configure
? Kann ich über die bestehende Installation kompilieren? Was ist mit Pfaden - wie stelle ich sie zusammen? Oder muss ich die von APT verwaltete Version entfernen und neu beginnen?
quelle
apt-cache search
?Antworten:
Installieren Sie dpkg-dev:
Repository hinzufügen:
Bearbeiten
/etc/apt/sources.list.d/nginx-stable-lucid.list
, dpkg-src hinzufügen:Hinweis: (Der vorherige Schritt wurde möglicherweise bereits automatisch unter Ubuntu> = 12.04 ausgeführt. Stellen Sie außerdem sicher, dass Sie Änderungen vornehmen,
lucid
um Ihre Version widerzuspiegeln.)Synchronisieren Sie die Paketindexdateien neu:
Quellen abrufen:
Abhängigkeiten aufbauen:
Editiere nginx-0.8.54 / debian / rules:
Paket erstellen:
Pakete installieren:
quelle
sudo dpkg --install nginx-full_0.8.54-4ppa4~lucid_i386.deb
ich empfangenginx-full depends on nginx-common (= 0.8.54-4ppa4~lucid); however: Package nginx-common is not installed.
,sudo dpkg --install nginx-common_0.8.54-4ppa4~lucid_all.deb
gebe ich jedochdpkg: 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
. Wie würden Sie die Lösung dieses Problems empfehlen?apt-get
/ deinstallierendpkg
, und auch andere Pakete, die Sie über installierenapt-get
, wissen, dass sienginx
installiert sind, und werden Sie nicht zur Installation auffordern. Wenn Sie es direkt von der Quelle installiert haben, erhalten Sie es nicht.dpkg-buildpackage -uc -us
anstelle vondpkg-buildpackage -b
. Andernfalls werden keine .deb-Dateien erstellt.Seit Squeeze in Debian und seit Oneric in Ubuntu gibt es einige (wie
headers-more-module
ich sie gebraucht habe) inquelle
Die Installation von Nginx aus dem Quellcode ist erforderlich, wenn Sie zusätzliches / (Drittanbieter-Modul) hinzufügen möchten. Wenn Nginx über die Quelle installiert wird, kann es nicht als Dienst verwendet werden, und logrotate wird nicht für Nginx eingerichtet. Befolgen Sie diese Methode , um es mit allen Funktionen zu installieren, die Sie durch die Installation über erhalten
apt-get
quelle
Süße Artikel , die gelesen werden können , hier werden die detaillierten Informationen zum Kompilieren Module in nginx erklären. Grundsätzlich müssen Sie den nginx jedes Mal neu kompilieren, wenn Sie ein Modul installieren möchten.
Auch ähnlich wie diese Methode wird auch funktionieren.
quelle