Inhaltsverzeichnis
1. Webserver-Nginx-Berechtigungen
二、php的权限配置
三、MySQL服务的权限配置
" >nginx.conf-Konfiguration sind: So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL
Heim Betrieb und Instandhaltung Nginx So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

May 24, 2023 pm 08:01 PM
mysql php nginx

So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

Normalerweise umfassen die Server, auf denen wir Webanwendungen ausführen, Linux-Distributionen wie CentOS, Ubuntu, Debian usw. Zu diesem Zeitpunkt ist die Berechtigungskontrolle von Nginx, PHP, MySQL und anderen Anwendungen, die zur Bildung der Dienstarchitektur erforderlich sind, sehr wichtig. Jeder Dienst hat unterschiedliche Berechtigungsanforderungen für das Codeverzeichnis nicht in der Lage zu lesen, zu schreiben oder auszuführen, was die Berechtigungsanforderungen senkt und das Risiko von Eingriffen und Änderungen birgt.

1. Webserver-Nginx-Berechtigungen

Das Betriebssystem von PHP wird normalerweise mit Nginx kombiniert, um LNMP zu bilden, oder mit Apache, um eine LAMP-Architektur zu bilden. Hier wird Nginx als Beispiel verwendet, um die Berechtigungen zu beschreiben, die zum Ausführen des Nginx-Dienstes erforderlich sind.
Wir wissen, dass Nginx selbst die PHP-Syntax nicht analysieren kann, daher analysiert Nginx die Ergebnisse für statische Dateien (wie HTML usw.) direkt und gibt sie zurück. Bei PHP-Dateien überträgt Nginx diese jedoch zur Verarbeitung an den PHP-Interpreter php-fpm. Geben Sie die Antwort nach der Verarbeitung an den Client-Browser zurück.

Daher müssen wir die für Nginx- und PHP-Dienste erforderlichen Berechtigungen in unserem Codeverzeichnis vereinheitlichen.

① Wenn der Root-Benutzer einheitlich verwendet wird, können allgemeine Gastkonten nicht auf die Anwendung zugreifen. Wenn Nginx für die Ausführung als Root konfiguriert ist, besteht ein großes Sicherheitsrisiko. Nach dem Angriff wird die Root-Identität abgerufen alle Vorgänge auf dem System.

Wenn die Berechtigungen des Codeverzeichnisses einheitlich auf rwxrwxrwx festgelegt sind, besteht die versteckte Gefahr, dass Benutzer das Codeverzeichnis direkt über den Browser ändern können.

Der beste Weg besteht also darin, sie einer neuen Benutzergruppe zuzuordnen und der Benutzergruppe die erforderlichen Berechtigungen zum Ausführen von Nginx und PHP zuzuweisen, um eine Berechtigungsverzeichnisverwaltung von Webanwendungen zu erreichen. In vielen Fällen verwenden Teams die www-Benutzergruppe, um Codeverzeichnisberechtigungen zu verwalten und Benutzer www einheitlich zu verwalten.

Wir können sehen, dass die in der Nginx-Konfigurationsdatei nginix.conf unterteilten Ausführungsberechtigungen unter dem www-Benutzer konfiguriert sind, sodass der untergeordnete Nginx-Prozess auch vom www-Benutzer ausgeführt wird, der über ausgeführt werden kann ps aux |. grep nginx zum Anzeigen: nginix.conf里面划分的运行权限就是配置到了www用户下,因此Nginx的子进程也是由www用户执行,可以通过ps aux | grep nginx来查看:

So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

可以看到nginx的主进程是root,其余子进程均是www的用户

nginx.conf的配置:

So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

二、php的权限配置

同样的,php的运行方式也是由主进程root运行,在子进程池(pool)里面配置由www用户执行,具体配置在php根目录下的etcphp-fpm.conf下,添加两行:

user = www
 group = www
Nach dem Login kopieren

即可,同样用ps aux | grep php可以查看进程使用的用户身份:

So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

三、MySQL服务的权限配置

通过ps aux | grep mysql

nginx , php-fpm und So konfigurieren Sie die Benutzerberechtigungen von MySQL

So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQLSie können sehen, dass der Hauptprozess von Nginx Root ist und die anderen Unterprozesse alle Benutzer von www

nginx.conf-Konfiguration sind: So konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL

2. PHP-Berechtigungskonfiguration

Ebenso wird PHP vom Hauptprozessstamm ausgeführt und im untergeordneten Prozesspool (Pool) für die Ausführung durch den WWW-Benutzer konfiguriert. Die spezifische Konfiguration befindet sich unter etcphp -fpm.conf im PHP-Stammverzeichnis. Fügen Sie einfach zwei Zeilen hinzu:

user www www;
Nach dem Login kopieren

Sie können auch ps grep php verwenden, um die vom Prozess verwendete Benutzeridentität anzuzeigen 🎜 Sie können sehen, dass der MySQL-Dienst unter dem MySQL-Benutzer ausgeführt wird. Für diesen Dienst müssen wir nur den MySQL-Benutzernamen angeben und Passwort, wenn der PHP-Code eine Verbindung zu MySQL herstellt, muss er nicht mit www vereinheitlicht werden, da die Datenschicht von der Geschäftslogikschicht isoliert werden muss, um die Sicherheit der zugrunde liegenden Daten zu gewährleisten. Die Autorisierung von MySQL dient hauptsächlich dem Hinzufügen neuer Benutzer und der Aufteilung von Berechtigungen im MySQL-Dienst, der zur Steuerung verschiedener PHP-Unternehmen verwendet wird, um eine Verbindung mit Identitäten mit unterschiedlichen Berechtigungsbereichen herzustellen, um die Datensicherheit zu gewährleisten. 🎜🎜🎜🎜🎜🎜🎜 IV. Zusammenfassung 🎜🎜🎜nginx-Konfiguration: 🎜
user = www
group = www
Nach dem Login kopieren
🎜php-fpm: 🎜🎜
drwxr-xr-x 就是755
Nach dem Login kopieren
🎜Verzeichnis: 🎜🎜rrreee

Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie Benutzerberechtigungen für Nginx, PHP-FPM und MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

So beheben Sie den Fehler „mysql_native_password nicht geladen' unter MySQL 8.4 So beheben Sie den Fehler „mysql_native_password nicht geladen' unter MySQL 8.4 Dec 09, 2024 am 11:42 AM

Eine der wichtigsten Änderungen, die in MySQL 8.4 (der neuesten LTS-Version von 2024) eingeführt wurden, besteht darin, dass das Plugin „MySQL Native Password“ nicht mehr standardmäßig aktiviert ist. Darüber hinaus entfernt MySQL 9.0 dieses Plugin vollständig. Diese Änderung betrifft PHP und andere Apps

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Wie analysiert und verarbeitet man HTML/XML in PHP? Wie analysiert und verarbeitet man HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge Feb 07, 2025 pm 12:12 PM

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Die 10 besten PHP-CMS-Plattformen für Entwickler im Jahr 2024 Die 10 besten PHP-CMS-Plattformen für Entwickler im Jahr 2024 Dec 05, 2024 am 10:29 AM

CMS steht für Content Management System. Es handelt sich um eine Softwareanwendung oder Plattform, die es Benutzern ermöglicht, digitale Inhalte zu erstellen, zu verwalten und zu ändern, ohne dass dafür fortgeschrittene technische Kenntnisse erforderlich sind. CMS ermöglicht Benutzern das einfache Erstellen und Organisieren von Inhalten

So fügen Sie Elemente zum Ende eines Arrays in PHP hinzu So fügen Sie Elemente zum Ende eines Arrays in PHP hinzu Feb 07, 2025 am 11:17 AM

Arrays sind lineare Datenstrukturen, die zur Verarbeitung von Daten in der Programmierung verwendet werden. Manchmal, wenn wir Arrays verarbeiten, müssen wir dem vorhandenen Array neue Elemente hinzufügen. In diesem Artikel werden wir verschiedene Möglichkeiten diskutieren, Elemente zum Ende eines Arrays in PHP hinzuzufügen, mit Code -Beispielen, Ausgabe sowie Zeit- und Raumkomplexitätsanalyse für jede Methode. Hier sind die verschiedenen Möglichkeiten, um einem Array Elemente hinzuzufügen: Verwenden Sie quadratische Klammern [] In PHP besteht die Möglichkeit, Elemente zum Ende eines Arrays hinzuzufügen, die Verwendung von Quadratklammern []. Diese Syntax funktioniert nur in Fällen, in denen wir nur ein einzelnes Element hinzufügen möchten. Das Folgende ist die Syntax: $ array [] = Wert; Beispiel

7 PHP-Funktionen, die ich leider vorher nicht kannte 7 PHP-Funktionen, die ich leider vorher nicht kannte Nov 13, 2024 am 09:42 AM

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

See all articles