Verwenden Sie nginx, um ein Skript aufzurufen

1076
uli_1973

Ich möchte eine bestimmte URL verwenden, um ein Wartungsskript aufzurufen (bezogen auf meine andere Frage ). Ich möchte dieses Wartungsskript nicht als Dienst / Server verwalten müssen, da es normalerweise nur einmal pro Tag ausgeführt wird.

Ich möchte also gerne wissen, wie ich eine URL in nginx umschreiben kann, um a) ein (Linux) Shellskript aufzurufen und b) die Nutzlast der Anforderung zu übergeben. (Ich bin mir noch nicht sicher, ob das Skript eine Antwort zurücksenden muss).

Obwohl dies wie eine natürliche Frage erscheint, habe ich noch keine Lösung gefunden.

0
Ich habe die andere Frage gelesen, und dies scheint ein komplizierter Ansatz zu sein. Was ich mache ist, dass mein interner Server seine eigene öffentliche Adresse überwacht und dann einen DNS-Eintrag in einem externen Server aktualisiert. Kein Ding vom Typ dyndns, nur mit BIND und nsupdate. Keine Notwendigkeit für einen zweiten Nginx, der alles nach außen zeigt. Paul vor 7 Jahren 0
Es tut mir leid, aber ich brauche weitere Hinweise, um das selbst zu untersuchen. Was ich habe, ist eine Toplevel-Domain, die auf meinen Remote-Server verweist, von dem Nginx abhört. In der nginx config konfiguriere ich Subdomains, und ich möchte, dass eine dieser Subdomains auf die sich ändernde IP meines Routers verweist. Ich weiß nicht, wie ich einen externen DNS-Eintrag von meinem Router aktualisieren kann. uli_1973 vor 7 Jahren 0
Sicher - betreiben Sie den DNS-Server selbst für Ihre Domain? Paul vor 7 Jahren 0
Nein, ich kann Datensätze nur über eine vom ISP bereitgestellte Webschnittstelle bearbeiten. uli_1973 vor 7 Jahren 0
Aber können Sie es selbst auf dem Server ausführen, auf dem Nginx installiert ist? Paul vor 7 Jahren 0
Eigentlich ist das ein Punkt, an dem ich kein Wissen habe. Ich habe root-Zugriff auf meinen Server, so dass ich wahrscheinlich jeden gewünschten Dienst / Server ausführen kann. Aber ich weiß nicht, wie die Außenwelt von einem DNS auf meiner IP-Adresse erfahren würde. uli_1973 vor 7 Jahren 0
Sicher - nun, dies führt Ihre Idee in eine völlig andere Richtung, daher ist es vielleicht nicht das, was Sie wollen. Im Grunde haben Sie jedoch einen Registrar für Ihre Domäne, und dort geben Sie an, wo sich die Nameserver für die Domäne befinden. Sie können deine eigenen sein. Paul vor 7 Jahren 0
Was ich * möchte * ist das Erstellen einer privaten dynamischen DNS-Umleitung, um nicht auf Drittanbieter angewiesen zu sein. Das wäre also im Einklang mit dem, was ich erreichen möchte (wenn auch nicht mehr mit dieser SU-Frage). In der Weboberfläche für meine Domains gibt es zwei NS-Einträge, die ich nicht bearbeiten kann. Ich kann aber * NS-Einträge hinzufügen. Bekomme ich also das Recht, dass ich bind installieren und konfigurieren und dann einen NS-Eintrag für die Subdomain hinzufügen muss, die ich umleiten möchte, diesen Punkt auf die IP-Adresse meines Servers verweisen und davon ausgehen, dass sich dies an das globale DNS-Netzwerk ausbreitet? uli_1973 vor 7 Jahren 0
Ja genau. Beachten Sie, dass DNS nicht wirklich "propagiert", es ist genau das, was die Techniker den Kunden mitteilten, um zu erklären, warum ihre DNS-Updates nicht unmittelbar sind. Bei einer neuen DNS-Anforderung wird immer der neueste Datensatz vom autorisierenden DNS-Server für eine Zone abgerufen. Diese Abfrage enthält jedoch einen TTL-Wert, der allen Teilnehmern an dieser Abfrage mitteilt, wie lange sie diesen Datensatz für genau halten können. Sobald die TTL abläuft, müssen sie zur Behörde zurückkehren und eine neue erhalten. Bis dahin können sie den Datensatz zwischenspeichern, sodass sie nicht erneut fragen müssen. Paul vor 7 Jahren 0
Ich verwende einen Cron-Job für diese Art von Dingen Tim vor 7 Jahren 0
Tim, meinst du einen Cron-Job, der wirklich oft (wahrscheinlich jede Minute) ausgeführt wird, bemerkt, wenn eine Datei geschrieben wurde, und führt erst dann die größere Konfiguration durch? ` uli_1973 vor 7 Jahren 0

0 Antworten auf die Frage