Tuesday, 24 October 2017

Nginx Cgi Binary Optionen


FreeBSD: Nginx FastCGI PHP Konfiguration Q. Wie konfiguriere ich PHP als FastCGI unter FreeBSD Nginx Webserver A. Sie können ganz einfach php als FastCGI Anwendung unter Nginx für Leistung konfigurieren. Sie benötigen folgende Komponenten: eine spawn-fcgi binary 8211 Für das Laichen eines FastCGI Prozesses. Diese Binärdatei kann aus dem Lighttpd Webserver Projekt installiert werden. Nginx erzeugt keine FCGI-Prozesse automatisch. Sie müssen sie separat mit spawn-fcgi starten. B start. php. sh. Ein Shell-Skript zu stoppen starten neu starten php fastcgi Prozess. Dieses Skript Swap-PHP-Prozess auf 127.0.0.1 IP und 9000 Port. Sobald das Backend gestartet ist, kann Nginx konfiguriert werden, um eine Verbindung zu PHP herzustellen. FreeBSD Installieren von PHP5 Wenn php5 nicht installiert ist, geben Sie die folgenden Befehle ein (stellen Sie sicher, dass Sie die Option FastCGI auswählen): cd usrportslangphp5 make config make install clean Abb.01 FastCGI-Unterstützung durch Auswahl von FastCGI-Option aktivieren Auch installierte PHP-Erweiterungen wie php-msyql, php - gd und so weiter: cp usrlocaletcphp. ini-empfohlene usrlocaletcphp. ini cd usrportslangphp5-extensions make install clean Installieren von spawn-fcgi Erfassen Sie die neuesten spawn-fcgi von einer anderen Lighttpd-Installation oder installieren Sie sie einfach wie folgt: pkgadd - r - v lighttpd Sample output : Jetzt können Sie usrlocalbinspawn-fcgi verwenden, um den Prozess zu tauschen. Wenn Sie möchten, können Sie usrlocalbinspawn-fcgi in root oder ein anderes Verzeichnis kopieren und einfach das lighttpd-Paket löschen, indem Sie die folgenden Befehle eingeben: cp usrlocalbinspawn-fcgi root pkgdelete - v lighttpd-1.4.181 cp rootspawn-fcgi usrlocalbinspawn-fcgi Jetzt können Sie PHP starten Fastcgi von der Befehlszeile wie folgt: usrlocalbinspawn-fcgi - a 127.0.0.1 - p 9000 - u www - g www - f usrlocalbinphp-cgi Wo, - a 127.0.0.1. PHP FastCGI bindet die IP-Adresse, wo sich Nginx verbindet. - p 9000 PHP FastCGI Portnummer, wo Nginx verbinden wird. - u www PHP FastCGI Benutzername. - g www. PHP FastCGI Gruppenname. - f usrlocalbinphp-cgi Pfad zu PHP5 fastcgi binär. Überprüfen Sie, dass PHP als FastCGI läuft, geben Sie ein: sockstat -4 grep 9000 Sample Output: Sample Shell Skript zum Starten Stopp PHP FastCGI Prozess Installieren Sie oben Shell-Skript: cd tmp fetch bash. cyberciti. bizdl251.sh. zip unzip 251.sh. zip mv 251.sh usrlocaletcrc. dphp. cgi. sh chmod x usrlocaletcrc. dphp. cgi. sh rm 251.sh. zip Um php FastCGI zu starten, geben Sie Folgendes ein: usrlocaletcrc. dphp. cgi. sh start sockstat -4 weniger Um php FastCGI zu stoppen, geben Sie ein : Usrlocaletcrc. dphp. cgi. sh stop Verbinden Sie Nginx Webserver Zu PHP FastCGI Prozess Öffnen Sie Ihre Datei ngixn. conf, geben Sie Folgendes ein: vi usrlocaletcnginxnginx. conf Fügen Sie folgende Konfigurationsrichtlinien hinzu, damit Nginx die PHP-Skripte an den FastCGI-Server übergeben kann, der auf 127.0.0.1 hört: 9000: Teilen Sie dieses Tutorial auf: Ihre Unterstützung macht einen großen Unterschied: Ich habe einen kleinen Gefallen zu fragen. Mehr Leute lesen das nixCraft. Viele von Ihnen blockieren die Werbung, die Ihr Recht ist, und Werbeeinnahmen reichen nicht aus, um meine Betriebskosten zu decken. So können Sie sehen, warum ich um Ihre Hilfe bitten muss. Die nixCraft, nimmt viel von meiner Zeit und harte Arbeit zu produzieren. Wenn du nixCraft nennst, der es mag, hilft mir mit Spenden: Werde ein Unterstützer rarr Machen Sie einen Beitrag über PaypalBitcoin rarr Dont Miss Any Linux und Unix Tipps Holen Sie sich nixCraft in Ihrem Posteingang. Es ist kostenlos: George Bonev 24. Februar 2009, 15:29 Uhr Wie ein Zauber thx :) Ed 18. März 2009, 16:50 Vielen Dank für das große Tutorial. Lange Lebensdauer für Freebsd und nginx Leo Vandewoestijne Mai 8, 2009, 12:12 am Vielleicht ist der Port isn8217t verfügbar, indem Sie Ihren Artikel schreiben, oder vielleicht I8217m verwirrend Dinge8230 8230but der Schritt 8220Install spawn-fcgi8221, kann das ohne Licht gemacht werden wie: pkgadd Spawn-fcgi symbol 8. Juni 2009, 3:52 am ja Und spawnfcgienable8221YES8221 gtgt etcrc. conf scheinen den Trick zu tun oder bin ich fehlt etwas, das wieder kommen würde, um mich irgendwann später zu verfolgen. Bash 11. Juni 2009, 20:44 Dieser Kerl zitiert nicht Ihren Blog: ksil 27. Juni 2009, 9 : 23 Uhr Hallo, vielen Dank für einen nützlichen Beitrag. Lassen Sie mich diesen Artikel in meinem japanischen Blog zitieren: d. hatena. ne. jpksil200906271246093375 Dustin Sweigart 3. Juli 2009, 14.36 Uhr Ich setze dies auf und es funktioniert super, aber unter hohen Lasten (Test mit apache8217s ab) der Spawn - Fcgiphp-cgi-Prozess stirbt und so mein Server aufhört, PHP zu laden. Ich weiß, I8217m testen mit einer unrealistischen Last auf meinem Server, aber ich auch don8217t wollen, dass andere in der Lage, so leicht brechen meine Server. Ab - n1000 - c200 websiteurl Hat jemand anderes dieses Problem, und wenn ja, weiß jemand, wie man es beheben Sie erhalten einen bestimmten Fehler in einer Protokolldatei Auch spezifizieren Sie Ihre Server-config Dustin Sweigart 3. Juli 2009, 7:08 Pm Normalerweise läuft es gut, können Sie check out swigg wenn you8217d gerne sehen PHP läuft normal. Aber schieben Sie den Server wirklich hart und was auch immer Prozess existiert, nachdem Sie spawn-fcgi stirbt (wie in es ist nicht mehr läuft) Fehler 248130: 1032 recv () fehlgeschlagen (104: Verbindungs-Reset durch Peer) beim Lesen von Antwort-Header von Upstream, Client : 64.22.125.174, Server: localhost, Anfrage: GET HTTP1.0, Upstream: Fastcgi: 127.0.0.1: 10005, Host: Swigg-Fehler 248130: 3964 connect () fehlgeschlagen (111: Verbindung verweigert) beim Verbinden mit Upstream, Client: 64.22.125.174, server: localhost, anfrage: GET HTTP1.0, upstream: fastcgi: 127.0.0.1: 10005, host: swigg Shatil 26. Dezember 2010, 03:28 FreeBSD8217s Ports Auswahl (mindestens 8.18217s8212I8217ve verwendet es für Vier Stunden jetzt) ​​hat PHP 5.3.4 jetzt, was bedeutet, dass PHP-FPM standardmäßig ist, solange man es durch Ports kompiliert. Mit diesem können Sie weg mit der Notwendigkeit, Spawn-fcgi, lighttpd, und die anderen Unsinn, die verwendet werden, um notwendig zu bekommen PHP Nginx arbeiten. Vielleicht könntest du einen anderen Posten mit dem platzieren, dass ich meine Nginx auf die Arbeit mit benutzerdefinierten CGI-Programmen (mit xmlrpc-c Bibliothek) einstellen kann. Ich versuche mit fcgiwrapspawn-fcgi wie folgt: Wichtiger Abschnitt von nginx. conf Datei wäre Ive versucht sowohl Soceket-Dateien und ipv4portnumber Kombinationen, aber ich bekam Fehler: Ich bekomme auch 502 Bad Gateway manchmal, wenn ich mit Optionen umgehen. Ich habe versucht jede Kombination, die ich google (beinhaltet das Ändern von etcnginxfastcgi. conf Datei) (beachten Sie, gibt es separate Abschnitte in nginx. conf für PHP cgi und für meine Testprogramme, PHP funktioniert gut) Ich bin stecken und weiß nicht, wie es zu konfigurieren, bin Ich vermisse etwas aus diesem Teil vor allem: in nginx. conf fastcgiparam SCRIPTFILENAME usrsharenginxhtmlcgi-bintestfastcgiscriptname desnt Arbeit, berichtet Fehler unter fastcgiparam SCRIPTFILENAME usrsharenginxhtmlcgi-bintestmyprog es funktioniert Ich habe mehr als ein Programm, wie man ausführbare nicht festlegen (wie myprog oben) Nginx 1.4.x auf Unix-Systemen Diese Dokumentation behandelt die Installation und Konfiguration von PHP mit PHP-FPM für einen NTCx 1.4.x HTTP-Server. Diese Anleitung wird davon ausgehen, dass Sie Nginx aus der Quelle gebaut haben und daher alle Binärdateien und Konfigurationsdateien bei usrlocalnginx liegen. Wenn dies nicht der Fall ist und Sie Nginx über andere Mittel erhalten haben, dann wenden Sie sich bitte an das raquo Nginx Wiki, um dieses Handbuch zu Ihrem Setup zu übersetzen. Dieses Handbuch behandelt die Grundlagen der Konfiguration eines Nginx-Servers zur Verarbeitung von PHP-Anwendungen und dient ihnen auf Port 80. Es wird empfohlen, die Nginx - und PHP-FPM-Dokumentation zu studieren, wenn Sie Ihr Setup nach dem Umfang dieser Dokumentation optimieren möchten. Bitte beachten Sie, dass in dieser Dokumentation Versionsnummern mit einem 039x039 ersetzt wurden, um sicherzustellen, dass diese Dokumentation künftig korrekt bleibt. Ersetzen Sie diese bitte bei Bedarf mit den entsprechenden Versionsnummern. Es empfiehlt sich, die Nginx Wiki raquo Installationseite zu besuchen, um Nginx auf deinem System zu erhalten und zu installieren. Erhalten und entpacken Sie die PHP-Quelle: Konfigurieren und Erstellen von PHP. Dies ist, wo Sie PHP mit verschiedenen Optionen anpassen, wie die Erweiterungen aktiviert werden. Führen Sie. configure --help für eine Liste der verfügbaren Optionen. In unserem Beispiel machen wir eine einfache Konfiguration mit PHP-FPM und MySQL Unterstützung. Erhalten und Verschieben von Konfigurationsdateien an ihre korrekten Standorte Es ist wichtig, dass wir Nginx daran hindern, Anfragen an das PHP-FPM-Backend weiterzugeben, wenn die Datei nicht existiert, so dass wir die willkürliche Skriptinjektion verhindern können. Wir können dies beheben, indem wir die cgi. fixpathinfo-Direktive auf 0 in unserer php. ini-Datei setzen. Das Gebäude von der Quelle ist nicht einfach, wenn etwas ein bisschen anders ist, und ich hatte eine harte Zeit mit einigen Verzeichnis - und Konfigurationsoptionen. Ich war um das Web herumgeflogen, bis ich diese Seite gefunden habe, die aus dem Chinesisch übersetzt hat. Kein anderer hatte die Lösung. Ich konnte nicht php fpm zu starten, bis ich das Verzeichnis geändert (Item 2.ERROR: Nicht zu globalisieren). Ich hatte andere Fragen aufgelistet, aber ich konnte sie lösen. Bitte löschen Sie das nicht, es ist sehr nützliche Infos. Die ursprüngliche Seite (es ist in Chinesisch, nicht meine Website, aber ich möchte Kredit geben): (es gibt noch etwas da, du kannst auf die Seite gehen) 1. configure: error. Xml2-config nicht gefunden Bitte überprüfen Sie Ihre libxml2 Installation. Apt-get install libxml2-dev 2.Warning: Erklärung von PEARInstaller. Download () sollte mit amp PEARDownloader kompatibel sein. Download (params) in phar: rootphp-7.0.0alpha1pearinstall-pear-nozlib. pharPEAR Installer. php on line 43 Warnung: Deklaration von PEARPackageFileParserv2. Parse () sollte mit PEARXMLParser kompatibel sein. Parse (data) in phar: rootphp-7.0.0alpha1pearinstall-pear-nozlib. pharPEARPackageFile Parser v2.php on line 113 PEAR ArchiveTar - bereits installiert: 1.3.13 PEAR ConsoleGetopt - bereits installiert: 1.3.1 PEAR StructuresGraph - bereits installiert: 1.0 .4 Warnung: Deklaration von PEARTaskReplace. Init () sollte mit PEARTaskCommon kompatibel sein. Init (xml, fileAttributes, lastVersion) in phar: rootphp-7.0.0alpha1pearinstall-pear-nozlib. Phar PEAR Aufgabe Replace. php on line 31 PEAR XMLUtil - bereits installiert: 1.2.3 Warnung: Deklaration von PEARTaskWindowseol. Init () sollte mit PEARTaskCommon kompatibel sein. Init (xml, fileAttributes, lastVersion) in phar: rootphp-7.0.0alpha1pearinstall-pear-nozlib. Phar PEAR Aufgabe Windowseol. php on line 76 Warnung: Deklaration von PEARTaskUnixeol. Init () sollte mit PEARTaskCommon kompatibel sein. Init (xml, fileAttributes, lastVersion) in phar: rootphp-7.0.0alpha1pearinstall-pear-nozlib. Phar PEAR Task Unixeol. php on line 76 PEAR PEAR - bereits installiert: 1.9.5 1.ERROR: konnte die Konfigurationsdatei nicht öffnen usrlocaletcphp-fpm. conf: Keine solche Datei oder Verzeichnis (2) ERROR: konnte die Konfigurationsdatei nicht laden usrlocaletcphp - Fpm. conf ERROR: FPM-Initialisierung fehlgeschlagen Php-fpm. conf kopiert Dateien aus der Quelldatei an diesen Speicherort. Cp rootphp-7.0.0alpha1sapifpmphp-fpm. conf usrlocaletcphp-fpm. conf 2.ERROR: Es ist nicht möglich, usrlocalNONEetcphp-fpm. d.conf (ret 2) von usrlocaletcphp-fpm. conf in Zeile 125 zu globalisieren. ERROR: konnte die Konfigurationsdatei nicht laden Usrlocaletcphp-fpm. conf ERROR: FPM-Initialisierung fehlgeschlagen Bearbeiten usrlocaletcphp-fpm. conf Dokument eingeführt. conf Teil, Wechsel zum korrekten Pfad include usr local etc php-fpm. d. Conf Wenn es kein Verzeichnis von usrlocaletcphp-fpm. d gibt, erstellen Sie das Verzeichnis. 3.WARNUNG: Nichts entspricht dem Include-Muster usrlocaletcphp-fpm. d.conf von usrlocaletcphp-fpm. conf an Zeile 125. ERROR. Kein Pool, der mindestens einen Poolabschnitt definiert hat, muss in der Konfigurationsdatei angegeben werden ERROR: Fehler beim Nacharbeiten der Konfiguration ERROR: FPM Initialisierung fehlgeschlagen cp conf. default conf 4.ERROR: pool www kann nicht gid für gruppe niemand bekommen ERROR: FPM initialisierung fehlgeschlagen Konfere Dateien, Benutzer - und Gruppenbenutzer in nginx-Standardeinstellungen, in der Regel ist die Voreinstellung www-data. Binary Releases Vorgefertigte Pakete für Linux und BSD Die meisten Linux-Distributionen und BSD-Varianten haben NGINX in den üblichen Paket-Repositories und können über jede beliebige Methode installiert werden Wird normalerweise verwendet, um Software zu installieren (apt-get auf Debian, auf Gentoo, Ports auf FreeBSD, etc.). Seien Sie sich bewusst, dass diese Pakete oft etwas veraltet sind. Wenn Sie die neuesten Features und Bugfixes wollen, wird it8217s empfohlen, aus der Quelle zu bauen oder Pakete direkt von nginx. org zu verwenden. Offizielle Red HatCentOS-Pakete Um NGINX yum-Repository hinzuzufügen, erstellen Sie eine Datei namens etcyum. repos. dnginx. repo und fügen Sie eine der folgenden Konfigurationen ein: Wegen der Unterschiede zwischen dem, was CentOS, RHEL und Scientific Linux die Releasever-Variable bevölkern, ist es notwendig Manuelles Ersetzen von Releaseover mit 5 (für 5.x) oder 6 (für 6.x), abhängig von Ihrer OS-Version. Offizielle DebianUbuntu-Pakete Die verfügbare NGINX Ubuntu-Release-Unterstützung ist auf dieser Distributionsseite aufgelistet. Für eine Abbildung von Ubuntu-Versionen, um Namen zu veröffentlichen, besuchen Sie bitte die offizielle Ubuntu-Versions-Seite. Fügen Sie die entsprechende Strophe zu etcaptsources. list hinzu. Wenn es Bedenken hinsichtlich der Beharrlichkeit von Repository-Hinzufügungen gibt (d. h. DigitalOcean-Tröpfchen), kann die entsprechende Strophe stattdessen zu einer anderen Listendatei unter etcaptsources. list. d hinzugefügt werden. Wie etcaptsources. list. dnginx. list. z. B. Ubuntu 16.04 (Xenial):

No comments:

Post a Comment