Forum: PC-Programmierung Merkwürdige Einrichtung von NGINX


von Arne (Gast)


Lesenswert?

Guten Abend,

ich habe einen managed vServer (debian), auf dem standardmäßig Apache 
als Webserver läuft. Ich bin kein Anfänger was das Einrichten von 
Webservern angeht, habe aber bislang einen Bogen um NGINX gemacht. Jetzt 
würde ich gerne für ein Projekt NGINX nutzen und bin etwas erstaunt über 
die Art, wie das vom Hoster umgesetzt wurde...

Die Installation soll der Kunde via SSH mit einem Befehl ("software 
install nginx") erledigen (Homebrew?). Wenn man den Autostart von NGINX 
wünscht, empfiehlt der Hoster einen Cronjob. Falls der Server von außen 
erreichbar sein soll, muss man auf dem Server eine RewriteRule in der 
.htaccess eintragen.

Ich empfinde schon den Cronjob als merkwürdig, aber für so Sachen wie 
systemctl fehlen mir vermutlich die Rechte auf dem vServer...bei der 
Umleitung via .htaccess frage ich mich jedoch, wo da der Sinn ist? Nach 
meinem Verständnis arbeitet der Apache hier als Proxy für NGINX - anders 
herum würde ich es ja noch verstehen.

von Leo H. (Gast)


Lesenswert?

Das klingt tatsächlich merkwürdig. Was möchtest du denn mit dem nginx 
erreichen?
Wenn du sowieso immer durch den Apache durch musst, würde ich eher 
versuchen deine Anwendung direkt über ProxyPass oder FastCGI an den 
Apache zu hängen und auf den nginx verzichten.

von Arne (Gast)


Lesenswert?

Leo H. schrieb:
> Das klingt tatsächlich merkwürdig. Was möchtest du denn mit dem nginx
> erreichen?

Hallo leoloewe,

es geht um eine umfangreiche WordPress-Installation, für die der 
Entwickler gerne NGINX hätte. Aus meiner Sicht ist es zunächst eine 
Vorgabe des Entwicklers.

von IT-Abteilung (Gast)


Lesenswert?

https://manual.uberspace.de/background-http-stack.html
Die hier machen das so ähnlich: Vorne lauscht der nginx (statt Apache) 
und hinten dran können die Benutzer den Apache, andere Software oder ihr 
eigenes Gebastel hängen. Ist dort ganz gut erklärt (siehe auch den Punkt 
darüber "Networking").

von Jim M. (turboj)


Lesenswert?

Arne schrieb:
> managed vServer (debian)

Auf einem managed Server sind etliche Änderungen am System nur durch den 
Hoster möglich. Und der wird die Finger davon lassen - alle managed 
Server sollten möglichst einheitliche Software fahren.

Deine Beschreibung liesst sich wie eine Anleitung zur Umgehung dieser 
Restriktionen. Fürs Test- und Enwicklungssystem geht das, produktiv 
würde ich das nicht einsetzen wollen.

Und ja, das wird Apache->Nginx, denn Apache läuft ja schon auf Port 
80/443 und blockiert den Port für Nginx.

Abhilfe müsste OP mit dem Hoster absprechen, vielleicht hat der auch ein 
Angebot für einen managed Server mit Nginx.

von Marc (gierig) Benutzerseite


Lesenswert?

> Die Installation soll der Kunde via SSH mit einem Befehl ("software
> install nginx") erledigen (Homebrew?).

Riecht ein wenig nach hetzner ist aber wohl ein Geheimnis deinerseits
welcher Anbieter ? Aber egal, das ist der Weg der zu gehen ist.
"software"  ist dann quasi der Paketmanager des Hosters
der angepasste/freigegebene Pakete installiert.
Und ja im Grunde ist das HomeBrew for Linux.
Am eigentlichen System wird da nicht geändert und alles läuft
in deinem User Kontext.

> Wenn man den Autostart von NGINX
> wünscht, empfiehlt der Hoster einen Cronjob.
Nicht schön aber auch nicht selten. Hierbei wird kein Regulärer
Cron angelegt der sich Periodisch wiederholt sonder ein
Spezieller "@reboot" der nur einmalig ausgeführt wird nach Systemstart.


> Falls der Server von außen
> erreichbar sein soll, muss man auf dem Server eine RewriteRule in der
> .htaccess eintragen.

Siehe andere Antworten, beim Default Webserver wird nicht geändert.
der horcht weiterhin auf den Standard Ports. Also mus eine
Umleitung erfolgen über ein Rewrite oder über irgendwelche Proxy
direktiven (wenn MOD_PROXY den auch installiert ist

von Arne (Gast)


Lesenswert?

Jim M. schrieb:
> Deine Beschreibung liesst sich wie eine Anleitung zur Umgehung dieser
> Restriktionen. Fürs Test- und Enwicklungssystem geht das, produktiv
> würde ich das nicht einsetzen wollen.

Kannst Du Deine Bedenken konkretisieren? Ich würde das schon gerne 
produktiv einsetzen, aber natürlich nicht auf Kosten der Sicherheit.

Marc D. schrieb:
> Riecht ein wenig nach hetzner ist aber wohl ein Geheimnis deinerseits
> welcher Anbieter ?

Nein, das ist kein Geheimnis. Ich hielt das nur nicht für wichtig. Deine 
Vermutung ist richtig, es ist Hetzner:

https://docs.hetzner.com/de/konsoleh/server-management/faq/installation-of-common-software/#nginx

Marc D. schrieb:
> Siehe andere Antworten, beim Default Webserver wird nicht geändert.
> der horcht weiterhin auf den Standard Ports. Also mus eine
> Umleitung erfolgen über ein Rewrite oder über irgendwelche Proxy
> direktiven (wenn MOD_PROXY den auch installiert ist

Würde die im Link beschriebene RewriteRule den NGINX in der Praxis 
ausbremsen? Moderne Webseiten erzeugen pro Aufruf nicht selten Requests 
im zweistelligen Bereich, und NGINX wird anscheinend gerne empfohlen, 
wenn der prozess- und .htaccess-basierte Apache bei vielen 
gleichzeitigen Anfragen träge wird. Es ist ja auch "nur" ein vServer, 
bei dem ich die Leistung (z.B. "2 vCores") nicht wirklich einordnen 
kann.

von Ralf D. (doeblitz)


Lesenswert?

Arne schrieb:
> Würde die im Link beschriebene RewriteRule den NGINX in der Praxis
> ausbremsen? Moderne Webseiten erzeugen pro Aufruf nicht selten Requests
> im zweistelligen Bereich, und NGINX wird anscheinend gerne empfohlen,
> wenn der prozess- und .htaccess-basierte Apache bei vielen
> gleichzeitigen Anfragen träge wird. Es ist ja auch "nur" ein vServer,
> bei dem ich die Leistung (z.B. "2 vCores") nicht wirklich einordnen
> kann.

Ja, man nimmt gern NGINX als Frontend, weil der da leichtgewichtiger ist 
als ein Apache. Und der NGINX hat auch recht nette Caching-Mechanismen, 
die sich relativ leicht konfigurieren lassen.

Wenn der Entwickler das so haben will, also NGINX-Frontend mit 
FastCGI-Backend für Wordpress, dann ist der managed vServer bei Hetzner 
dafür nicht der geeignete Unterbau.

von Aalpaule (Gast)


Lesenswert?

Auf nem managed Server nginx und aufm gleichen Server Apache?

nginx schaltet man bei 'grossen' sites vor um die Last zu verteilen, auf 
einem managed Server bremst man die Kiste damit nur noch mehr aus.

Frag deinen Entwickler ob er wirklich weiss was er da tut.

von Sheeva P. (sheevaplug)


Lesenswert?

Arne schrieb:
> Marc D. schrieb:
>> Siehe andere Antworten, beim Default Webserver wird nicht geändert.
>> der horcht weiterhin auf den Standard Ports. Also mus eine
>> Umleitung erfolgen über ein Rewrite oder über irgendwelche Proxy
>> direktiven (wenn MOD_PROXY den auch installiert ist
>
> Würde die im Link beschriebene RewriteRule den NGINX in der Praxis
> ausbremsen? Moderne Webseiten erzeugen pro Aufruf nicht selten Requests
> im zweistelligen Bereich, und NGINX wird anscheinend gerne empfohlen,
> wenn der prozess- und .htaccess-basierte Apache bei vielen
> gleichzeitigen Anfragen träge wird. Es ist ja auch "nur" ein vServer,
> bei dem ich die Leistung (z.B. "2 vCores") nicht wirklich einordnen
> kann.

Das macht sich bei Servern mit vielen, vielen Requests pro Sekunde 
bemerkbar, und sowas hostet kein vernünftiger Mensch auf einem 
virtuellen Server. Da kümmerst Du Dich besser um das Tuning Deiner 
Datenbank und das Caching Deiner Webseiten, die Zeit ist besser 
investiert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.