So kompilieren Sie Nginx-Webserver unter Debian Linux neu

So kompilieren Sie Nginx-Webserver unter Debian Linux neu

Nehmen wir an, Sie möchten einige Änderungen vornehmen nginx Quellcode in
um einige Funktionen vor dem tatsächlichen Hinzufügen oder Entfernen zu fügen oder zu entfernen nginx
Paketinstallation. In dieser Konfiguration zeigen wir, wie man neu kompiliert
nginx Paket auf Debian Linux.

Installieren Sie zuerst Paketbuilding -Tools:

# APT-Get Installieren Sie DPKG-dev 

Als nächstes müssen wir alle installieren nginx Abhängigkeiten bauen:

# APT-Get Build-Dep nginx 

Herunterladen nginx Quellcode:

$ mkdir nginx-local $ cd nginx-local/ $ apt-Get Source Nginx 

Der obige Befehl lädt alle notwendig herunter nginx Quelldaten
Änderung verwendet, um zu bauen *.Deb Debian -Paket.

$ tree -l 2 . ├── nginx-1.6.2 │ ├── Auto │ ├── Änderungen │ ├── Änderungen.Ru │ ├── │ ├ ├── Konfigurieren Sie │ ├ ├── Beitrag │ ├── Debian.6.2-5.Debian.Teer.xz ├── nginx_1.6.2-5.DSC └── nginx_1.6.2.orig.Teer.GZ 8 Verzeichnisse, 8 Dateien 

Als Beispiel können wir jetzt den Quellcode ändern, um den Namen des Webservers aus zu ändern
nginx Zu Labnix Private Web Server. Bearbeiten
nginx-1.6.2/src/http/ngx_http_header_filter_module.C
Linien

Von: static char ngx_http_server_string [] = "server: nginx" crlf; static char ngx_http_server_ful_string [] = "server:" nginx_ver crlf; An: static char ngx_http_server_string [] = "server: labnix private web Server" CRLF; static char ngx_http_server_ful_string [] = "server: labnix private web Server" CRLF; 

Sobald Sie alle notwendigen Änderungen am Quellcode des NGINX vorgenommen haben
Es ist Zeit, ein neues zu bauen *.Deb Paket:

$ cd nginx-1.6.2/$ dpkg -buildpackage -rfakeroot -uc -b… dpkg -deb -build debian/nginx… dpkg -deb: bauen paket 'nginx' in '…/nginx_1.6.2-5_all.Deb '. dpkg-deb-build debian /nginx-doc… dpkg-deb: bauen paket 'nginx-doc' in '… /nginx-doc_1.6.2-5_all.Deb '. dpkg-deb-build debian /nginx-common… dpkg-deb: Erstellen von Paket 'nginx-common' in '… /nginx-common_1.6.2-5_all.Deb '. dpkg-deb-build debian /nginx-full… dpkg-deb: bauen paket 'nginx-full' in '… /nginx-full_1.6.2-5_amd64.Deb '. dpkg-deb-build debian /nginx-full-dbg… dpkg-deb: bauen paket 'nginx-full-dbg' in '… /nginx-full-dbg_1.6.2-5_amd64.Deb '. dpkg-deb-build debian /nginx-light… dpkg-deb: bauen paket 'nginx-light' in '… /nginx-light_1.6.2-5_amd64.Deb '. dpkg-deb-build debian /nginx-light-dbg… dpkg-deb: bauen paket 'nginx-light-dbg' in '… /nginx-light-dbg_1.6.2-5_amd64.Deb '. dpkg-deb-build debian /nginx-extras… dpkg-deb: bauen paket 'nginx-extras' in '… /nginx-extras_1.6.2-5_amd64.Deb '. dpkg-deb-build debian /nginx-extras-dbg… dpkg-deb: bauen paket 'nginx-extras-dbg' in '… /nginx-extras-dbg_1.6.2-5_amd64.Deb '. DPKG -GENCHANGES -B>… /NGINX_1.6.2-5_amd64.Änderungen DPKG-Genchanges: Binärer Upload (kein Quellcode enthalten) DPKG-Source-Nachbauer Nginx-1.6.2 dpkg-buildpackage: Nur-Binär-Upload (keine Quelle enthalten) 

Die neuen neu comilierten Pakete sind nun installiert:

$ cd… $ ls nginx-1.6.2 nginx_1.6.2-5_amd64.ändert nginx_1.6.2-5.DSC nginx-common_1.6.2-5_all.Deb nginx-extras_1.6.2-5_amd64.Deb nginx-full_1.6.2-5_amd64.Deb nginx-light_1.6.2-5_amd64.Deb nginx_1.6.2-5_all.Deb nginx_1.6.2-5.Debian.Teer.xz nginx_1.6.2.orig.Teer.gz nginx-doc_1.6.2-5_all.Deb nginx-extras-dbg_1.6.2-5_amd64.Deb nginx-full-dbg_1.6.2-5_amd64.Deb nginx-light-dbg_1.6.2-5_amd64.Deb 

Installieren nginx aus neu erstellten Paketen:

# dpkg -i nginx_1.6.2-5_all.Deb nginx-full_1.6.2-5_amd64.Deb nginx-common_1.6.2-5_all.Deb nginx-doc_1.6.2-5_all.Deb 

Überprüfen Sie den Status des Status Webserver:

 Systemctl Status nginx nginx.Service - Ein Hochleistungs -Webserver und ein Reverse -Proxy -Server geladen: geladen (/lib/systemd/system/nginx.Service; aktiviert) aktiv: aktiv (laufend) seit Mi 2015-04-15 09:46:53 AEST; Vor 1 min vor 18 Jahren Prozess: 3535 execstart =/usr/sbin/nginx -g -Daemon auf; Master_Process on; (Code = beendet, Status = 0/Erfolg) Prozess: 3534 execstartPre =/usr/sbin/nginx -t -q -g -Daemon on; Master_Process on; (Code = beendet, Status = 0 /Erfolg) HauptpID: 3538 (Nginx) CGroup: /System.Slice/Nginx.Service ├─3538 Nginx: Master -Prozess/usr/sbin/nginx -g -Daemon auf; Master_Process on; ° 

Bestätigen Sie den Servernamenänderungen:

# curl -i http: // localhost http/1.1 200 OK Server: Labnix privater Webserver Datum: Di, 14. April 2015 23:49:37 GMT-Inhaltstyp: Text/HTML-Inhaltslänge: 867 Letztermodifiziert: Di, 14. April 2015 23:45:07 GMT-Verbindung : Keep-Alive ETAG: "552DA683-363" Akzeptieren: Bytes 

Verwandte Linux -Tutorials:

  • Dinge zu installieren auf Ubuntu 20.04
  • So drucken Sie den Verzeichnisbaum mit Linux
  • Anfängerhandbuch zum DPKG Linux -Befehl
  • Installieren Sie die DEB -Datei auf Ubuntu 22.04 Jammy Jellyfish Linux
  • Installieren Sie Arch Linux in VMware Workstation
  • Dinge zu installieren auf Ubuntu 22.04
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • GDB -Debugging -Tutorial für Anfänger
  • Python reguläre Ausdrücke mit Beispielen
  • So erstellen Sie eine Tkinter -Anwendung mithilfe eines objektorientierten…