Heim > Backend-Entwicklung > PHP7 > Hauptteil

So erstellen Sie mit PHP7 eine LNMP-Umgebung auf einem MAC

醉折花枝作酒筹
Freigeben: 2023-02-18 06:22:01
nach vorne
1752 Leute haben es durchsucht

In diesem Artikel erfahren Sie, wie Sie mit PHP7 eine LNMP-Umgebung auf einem MAC erstellen. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

So erstellen Sie mit PHP7 eine LNMP-Umgebung auf einem MAC

1. Installieren Sie MySQL:

Überprüfen Sie die verfügbaren MySQL-Versionsinformationen:

brew info mysql
Nach dem Login kopieren

Die Version, die ich hier sehe, ist 5.7.10:

mysql: stable 5.7.10 (bottled)
Nach dem Login kopieren

Als nächstes installieren Sie MySQL 5.7.10:

brew install mysql
Nach dem Login kopieren

Nachdem die Installation abgeschlossen ist, Folgen Sie der Aufforderung, die Plist-Datei in ~/Library/LaunchAgents/ abzulegen und zu laden. Stellen Sie MySQL so ein, dass es beim Start startet:

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
Nach dem Login kopieren

MySQL starten:

mysql.server start
Nach dem Login kopieren

Da MySQL nach dem Start standardmäßig kein Passwort festlegt, müssen Sie dies tun Legen Sie das Root-Passwort fest:

mysql -uroot -p
Nach dem Login kopieren

Wenn Sie zur Eingabe des Passworts aufgefordert werden, drücken Sie einfach die Eingabetaste, um sich anzumelden. Nach der Anmeldung bei MySQL lautet die Eingabeaufforderung wie folgt:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.10 Homebrew
Nach dem Login kopieren

Als nächstes legen Sie das Root-Passwort fest:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
Nach dem Login kopieren

Beim Festlegen des Passwort, es ist am besten, ein sicheres Passwort festzulegen, offiziell. Es gibt die folgenden Anweisungen:

Note
MySQL's validate_password plugin is installed by default. This will require that passwords contain at least one upper case letter, one lower case letter, one digit, and one special character, and that the total password length is at least 8 characters.
Nach dem Login kopieren

Zur Vereinfachung der Verwendung erstellen wir häufig einen Root-Benutzer für jede Verbindung:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyNewPass4!' WITH GRANT OPTION;
Nach dem Login kopieren

Aktualisieren Sie die Berechtigungen, um den Befehl auszuführen wirksam werden:

flush privileges;
Nach dem Login kopieren

MySQL beenden: beenden; PHP 7.1.0-dev (cli) (erstellt: 4. Februar 2016 09:02:09) (ZTS DEBUG) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies mit Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, von Zend Technologies Kopieren Sie die MySQL-Konfigurationsdatei:

sudo cp /usr/local/Cellar/mysql/5.7.10/support-files/my-default.cnf /etc/my.cnf
Nach dem Login kopieren

Fügen Sie Lower_case_table_names=1 nach [mysqld] in /etc/my.cnf hinzu, starten Sie den MYSQL-Dienst neu, Zu diesem Zeitpunkt war die Einstellung erfolgreich: Beim Tabellennamen wird die Groß-/Kleinschreibung nicht beachtet;

PS.lower_case_table_names Parameterdetails: 0: Groß-/Kleinschreibung wird berücksichtigt, 1: Groß-/Kleinschreibung wird nicht berücksichtigt

2. Installieren Sie PHP7:

①, laden Sie PHP7 herunter :

mkdir ~/php7 && cd ~/php7
git clone https://git.php.net/repository/php-src.git
Nach dem Login kopieren

②, PHP7 erstellen:

cd php-src
./buildconf
Nach dem Login kopieren

③, PHP kompilieren:

PS. Wenn der Speicher beim Kompilieren weniger als 1 GB beträgt, fügen Sie bitte am Ende Folgendes hinzu: --disable-fileinfo,

Bei der Installation von PHP7, Sie müssen re2c, bison, ffmpeg, mcrypt, libiconv, gd, openssl installieren:

Re2c installieren:

brew install re2c
Nach dem Login kopieren

Bison (3.0.4) installieren:

brew install bison
brew switch bison 3.0.4
brew link bison --force
sudo mv /usr/bin/bison /usr/bin/bison.orig
sudo ln -s /usr/local/bin/bison /usr/bin/bison
Nach dem Login kopieren

Öffnet installieren:

brew install ffmpeg
Nach dem Login kopieren

Installieren mcrypt:

brew install openssl
brew link openssl --force
Nach dem Login kopieren

Libiconv installieren:

brew install mcrypt
Nach dem Login kopieren

Wenn Sie OpenSSL verwenden möchten, haben Sie OpenSSL gerade installiert, aber das System wird mit OpenSSL geliefert, daher müssen Sie das OpenSSL, das mit dem System geliefert wird, durch das installierte OpenSSL ersetzen:

brew install libiconv
Nach dem Login kopieren

Nachdem der Austausch abgeschlossen ist, geben Sie die OpenSSL-Version ein und Sie werden sehen, dass ich OpenSSL mit Brew installiert habe, da der OpenSSL-Header während der PHP-Kompilierung benötigt wird, aber während der Installation nicht verfügbar ist.

PHP7 kompilieren:

sudo ln -sf /usr/local/opt/openssl/bin/openssl /usr/bin/openssl
Nach dem Login kopieren

Wenn während des Kompilierungsprozesses die Meldung angezeigt wird: Header-Datei libintl.h kann nicht gefunden werden, führen Sie bitte die folgenden Vorgänge aus:


①, gettext installieren:

./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --bindir=/usr/local/php7/bin --sbindir=/usr/local/php7/sbin --includedir=/usr/local/php7/include --libdir=/usr/local/php7/lib/php --mandir=/usr/local/php7/php/man --with-config-file-path=/usr/local/php7/etc --enable-bcmath --enable-calendar --enable-debug --enable-exif --enable-fileinfo --enable-filter --enable-fpm --enable-ftp --enable-gd-jis-conv --enable-gd-native-ttf --enable-hash --enable-json --enable-libxml --enable-maintainer-zts --enable-mbregex --enable-mbstring --enable-mysqlnd --enable-opcache --enable-opcache-file --enable-pcntl --enable-pdo --enable-session --enable-shared --enable-shmop --enable-simplexml --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --enable-xml --enable-zip --with-bz2 --with-curl --with-fpm-user=www --with-fpm-group=www --with-freetype-dir=/usr --with-gd --with-gettext --with-gmp --with-iconv --with-jpeg-dir=/usr --with-mcrypt=/usr/include --with-mhash --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --with-png-dir=/usr --with-xmlrpc --with-zlib -with-libxml-dir=/usr
Nach dem Login kopieren

②, Konfigurationsdatei ändern:

brew install gettext
Nach dem Login kopieren

Suchen Sie die folgende Datei:

vi configure
Nach dem Login kopieren

Ersetzen Sie durch:

for i in $PHP_GETTEXT /usr/local /usr ; do
Nach dem Login kopieren

Wenn ein OpenSSL-Fehler angezeigt wird, legen Sie beim Kompilieren den Pfad auf OpenSSL fest. Kompilieren und installieren Sie nach Abschluss:

for i in $PHP_GETTEXT /usr/local /usr /usr/local/opt/gettext; do
Nach dem Login kopieren

Wenn Sie viele Methoden ausprobieren und einen SSL-Fehler melden, tun Sie dies OpenSSL beim Kompilieren nicht hinzufügen

⑤ Nachdem die Installation abgeschlossen ist, konfigurieren Sie PHP7:

--with-openssl=/usr/local/opt/openssl/
Nach dem Login kopieren

In der Installation wird nach Abschluss der Übertragung eine Eingabeaufforderung angezeigt:

make && make install
Nach dem Login kopieren

Als nächstes bearbeiten Sie php.ini,

sudo ln -s /usr/local/php7/bin/php* /usr/bin/
sudo ln -s /usr/local/php7/sbin/php-fpm /usr/bin
cp php.ini-production /usr/local/php7/etc/php.ini
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
sudo ln -s /usr/local/php7/etc/php.ini /etc/php.ini
sudo ln -s /usr/local/php7/etc/php-fpm.conf /etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
Nach dem Login kopieren

finden Sie include_path , füge include_path zu php.ini hinzu:

You may want to add: /usr/local/php7/lib/php/php to your php.ini include_path
Nach dem Login kopieren

Überprüfen Sie die PHP-Version:

vi /etc/php.ini
Nach dem Login kopieren
Nach dem Login kopieren

Das Ergebnis ist wie folgt:

include_path = "/usr/local/php7/lib/php/php"
Nach dem Login kopieren

Ändern Sie die Konfiguration, stellen Sie sicher, dass PHP7 den Opcache unterstützt. Wenn die Installation abgeschlossen ist, wird Folgendes angezeigt:

php -v
Nach dem Login kopieren

Dies path ist der Pfad des Erweiterungspakets. Kopieren Sie den Pfad, suchen Sie extension_dir und fügen Sie den richtigen Pfad zu php.ini hinzu. ini, opcache.so hinzufügen

PHP 7.1.0-dev (cli) (built: Feb  4 2016 09:02:09) ( ZTS DEBUG )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies
Nach dem Login kopieren

Opcache.so zitieren:

Installing shared extensions:     /usr/local/php7/lib/php/extensions/debug-zts-20151012/
Nach dem Login kopieren

Und die Konfiguration von opcache ändern:

vi /etc/php.ini
Nach dem Login kopieren
Nach dem Login kopieren

Jetzt die PHP-Version überprüfen. Die angezeigten Informationen lauten wie folgt:

extension_dir = "/usr/local/php7/lib/php/extensions/debug-zts-20151012/"
Nach dem Login kopieren

Jetzt wurde die Opcache-Erweiterung hinzugefügt , ändern Sie die Konfiguration von php-fpm:

sudo mkdir -p /var/log/opcache
vi /etc/php.ini
Nach dem Login kopieren

Ändern Sie die Konfiguration:

zend_extension=opcache.so
Nach dem Login kopieren

Starten Sie php-fpm:

opcache.enable=1opcache.enable_cli=1opcache.file_cache="/var/log/opcache/"
Nach dem Login kopieren

Dies führt zu zwei Warnungen:

PHP 7.1.0-dev (cli) (built: Feb  4 2016 09:02:09) ( ZTS DEBUG )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
Nach dem Login kopieren

Der Befehl zum Stoppen von php-fpm lautet wie folgt:

vi /etc/php-fpm.conf
Nach dem Login kopieren

Der Befehl zum Neustart von php-fpm lautet wie folgt:

pid = run/php-fpm.pid
error_log = log/php-fpm.log
Nach dem Login kopieren

Als nächstes beginnen Sie mit der Installation von Nginx:

3. Installieren Sie Nginx:

php-fpm -D
Nach dem Login kopieren

Nach Abschluss der Installation von Nginx lautet der Standard-Root-Pfad wie folgt:

Die Konfigurationsdatei Das Verzeichnis von
[04-Feb-2016 09:45:25] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root
[04-Feb-2016 09:45:25] NOTICE: [pool www] 'group' directive is ignored when FPM is not running as root
Nach dem Login kopieren

nginx lautet wie folgt:

kill -INT `cat /usr/local/php7/var/run/php-fpm.pid`
Nach dem Login kopieren

nginx Das virtuelle Site-Verzeichnis lautet wie folgt:

kill -USR2 `cat /usr/local/php7/var/run/php-fpm.pid`
Nach dem Login kopieren

Starten Sie Nginx beim Booten:

brew install nginx
Nach dem Login kopieren

Starten Sie Nginx:

Docroot is: /usr/local/var/www
Nach dem Login kopieren

nginx benötigt Root-Berechtigungen, um Port 80 abzuhören. Jetzt lauscht Nginx standardmäßig. 8080-Port:

/usr/local/etc/nginx/nginx.conf
Nach dem Login kopieren

Um Nginx zu konfigurieren, platzieren Sie zunächst die Nginx-Konfigurationsdatei unter /etc:

nginx will load all files in /usr/local/etc/nginx/servers/.
Nach dem Login kopieren

Ändern Sie den Nginx-Listening-Port:

ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents
Nach dem Login kopieren

Ändern Sie die Konfigurationsdatei wie folgt:

nginx
Nach dem Login kopieren

Dann erstellen Sie die Standarddatei unter /etc:

sudo chown root:wheel /usr/local/Cellar/nginx/1.8.1/bin/nginx
sudo chmod u+s /usr/local/Cellar/nginx/1.8.1/bin/nginx
Nach dem Login kopieren

etc/nginxservers/ .conf, bearbeiten Sie default.conf und fügen Sie den folgenden Inhalt hinzu:

sudo ln -s /usr/local/etc/nginx/nginx.conf /etcsudo ln -s /usr/local/etc/nginx/servers /etc/nginxservers
Nach dem Login kopieren

An diesem Punkt wurde LNMP eingerichtet, starten Sie php-fpm und nginx neu.

Empfohlenes Lernen:

php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo erstellen Sie mit PHP7 eine LNMP-Umgebung auf einem MAC. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage