Einfache Beschreibung Da es zuvor mit Centos7 erstellt wurde und ich später Ubuntu 20.04 als meine persönliche Entwicklungsumgebung verwendete, wollte ich auch eine Umgebung auf Ubuntu erstellen. Es gibt einige kleine Unterschiede zu Centos, daher zeichne ich es nur zum Lernen auf. Vorbereitung vor der Installation Software herunterladen: Entpacken Sie die Dateien: tar zxf php-7.3.18.tar.gz tar zxf mariadb-10.5.4.tar.gz tar zxf nginx-1.18.0.tar.gz Installieren Sie Nginx sudo groupadd -r nginx und sudo useradd -r -g nginx -s /sbin/nologin -d /usr/local/nginx nginx sudo apt install -y libpcre3-dev zlib1g-dev cd /home/allen/Downloads/nginx-1.18.0 ./configure --user=nginx --group=nginx make -j 4 und sudo make install sudo /usr/local/nginx/sbin/nginx -t #nginx: die Syntax der Konfigurationsdatei /usr/local/nginx/conf/nginx.conf ist in Ordnung #nginx: Test der Konfigurationsdatei /usr/local/nginx/conf/nginx.conf ist erfolgreich sudo mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.back sudo vim /usr/local/nginx/conf/nginx.conf Benutzer nginx; Arbeitsprozesse 4; Ereignisse { Arbeiterverbindungen 1024; } http { mime.types einschließen; Standardtyp Anwendung/Oktett-Stream; sendfile an; KeepAlive-Timeout 65; log_format main '$remote_addr || $remote_user || $time_local || $request || $status || $body_bytes_sent || $http_referer || $http_user_agent || $http_x_forwarded_for'; einschließen /data/www/*/*.conf; } sudo chown -R nginx:nginx /usr/local/nginx sudo vim /lib/systemd/system/nginx.service [Einheit] Beschreibung=nginx Nach=Netzwerk.Ziel [Service] Typ=Forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s neu laden ExecStop=/usr/local/nginx/sbin/nginx -s beenden PrivateTmp=true [Installieren] WantedBy=Mehrbenutzer.Ziel sudo systemctl aktiviere nginx #Symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /lib/systemd/system/nginx.service erstellt. Neustart Überprüfen Sie nach dem Neustart, ob der Start erfolgreich war. Installieren Sie Mariadb sudo rm -rf /etc/mysql sudo apt remove -y mysql-common sudo apt autoremove -y sudo apt install -y cmake libncurses5-dev libgnutls28-dev sudo groupadd -r mysql und sudo useradd -r -g mysql -s /sbin/nologin -d /usr/local/mariadb mysql sudo mkdir -p /data/db /var/log/mariadb cd /home/allen/Downloads/mariadb-10.5.4/ cmake. -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb -DMYSQL_DATADIR=/data/db -DSYSCONFDIR=/etc -DWITHOUT_TOKUDB=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci make -j 4 und sudo make install sudo /usr/local/mariadb/scripts/mysql_install_db --user=mysql --datadir=/data/db sudo vim /etc/my.cnf [mysqld] Datenverzeichnis = /Daten/DB Socket = /tmp/mysql.sock # Es wird empfohlen, symbolische Links zu deaktivieren, um verschiedene Sicherheitsrisiken zu vermeiden symbolic-links = 0 Sortierserver = utf8mb4_general_ci init-connect = "Namen festlegen utf8mb4" Zeichensatzserver = utf8mb4 [mysql] Standardzeichensatz = utf8mb4 [Kunde] Port = 3306 Socket = /tmp/mysql.sock Standardzeichensatz = utf8mb4 [mysqld_safe] Log-Fehler = /var/log/mariadb/mariadb.log pid-Datei = /var/run/mariadb/mariadb.pid sudo cp /usr/local/mariadb/support-files/mysql.server /etc/init.d/mariadb sudo vim /etc/profile.d/mariadb.sh export PATH=$PATH:/usr/local/mariadb/bin/ sudo chmod 0777 /etc/profile.d/mariadb.sh Quelle /etc/profile.d/mariadb.sh sudo /etc/init.d/mariadb starten #MariaDB starten (über systemctl): mariadb.service. sudo /usr/local/mariadb/bin/mysql_secure_installation #HINWEIS: DIE AUSFÜHRUNG ALLER TEILE DIESES SCRIPTS WIRD FÜR ALLE MariaDB EMPFOHLEN # SERVER IM PRODUKTIONSEINSATZ! BITTE JEDEN SCHRITT SORGFÄLTIG DURCHLESEN! #Um uns bei MariaDB anzumelden und es zu sichern, benötigen wir die aktuelle #Passwort für den Root-Benutzer. Wenn Sie MariaDB gerade installiert haben und #das Root-Passwort noch nicht festgelegt haben, drücken Sie hier einfach die Eingabetaste. #Geben Sie das aktuelle Passwort für root ein (geben Sie es für keins ein): #OK, Passwort erfolgreich verwendet, weiter geht‘s … #Das Setzen des Root-Passworts oder die Verwendung des Unix_Sockets stellt sicher, dass niemand #kann sich ohne entsprechende Autorisierung beim MariaDB-Root-Benutzer anmelden. #Ihr Root-Konto ist bereits geschützt, Sie können also bedenkenlos mit „n“ antworten. #Wechseln zur Unix_Socket-Authentifizierung [J/n] y #Erfolgreich aktiviert! #Berechtigungstabellen neu laden.. # ... Erfolg! #Ihr Root-Konto ist bereits geschützt, Sie können also bedenkenlos mit „n“ antworten. #Das Root-Passwort ändern? [J/n] y #Neues Passwort: #Neues Passwort erneut eingeben: #Passwort erfolgreich aktualisiert! #Berechtigungstabellen neu laden.. # ... Erfolg! #Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der es jedem ermöglicht, #um sich bei MariaDB anzumelden, ohne ein Benutzerkonto erstellen zu müssen #sie. Dies ist nur zum Testen gedacht und um die Installation #geh etwas sanfter vor. Du solltest sie entfernen, bevor du in eine #Produktionsumgebung. #Anonyme Benutzer entfernen? [J/n] j # ... Erfolg! #Normalerweise sollte root nur von 'localhost' aus eine Verbindung herstellen dürfen. #stellt sicher, dass niemand das Root-Passwort vom Netzwerk aus erraten kann. #Root-Login aus der Ferne verbieten? [J/n] n # ... überspringen. #Standardmäßig wird MariaDB mit einer Datenbank namens „test“ ausgeliefert, die jeder #access. Dies ist auch nur für Tests gedacht und sollte entfernt werden #bevor Sie in eine Produktionsumgebung wechseln. #Testdatenbank und Zugriff darauf entfernen? [J/n] j # - Testdatenbank wird gelöscht … # ... Erfolg! # - Berechtigungen für die Testdatenbank werden entfernt … # ... Erfolg! #Durch das Neuladen der Berechtigungstabellen wird sichergestellt, dass alle bisher vorgenommenen Änderungen #wird sofort wirksam. #Berechtigungstabellen jetzt neu laden? [J/n] j # ... Erfolg! #Aufräumen... #Fertig! Wenn Sie alle oben genannten Schritte abgeschlossen haben, wird Ihr MariaDB #Installation sollte jetzt sicher sein. #Danke, dass Sie MariaDB verwenden! sudo systemctl aktiviere MariaDB sudo chown mysql:mysql -R /usr/local/mariadb /data/db /var/log/mariadb Neustart Überprüfen Sie nach dem Neustart, ob der Start erfolgreich war. Installieren Sie PHP sudo apt install -y libxml2-dev libssl-dev libbz2-dev libcurl4-gnutls-dev libjpeg-dev libpng-dev pkg-config libxslt1-dev libzip-dev libfreetype6-dev libfontconfig1-dev autoconf sudo groupadd -r php und sudo useradd -r -g php -s /sbin/nologin -d /usr/local/php php sudo vim /etc/sudoers php ALLE = (ALLE:ALLE) ALLE cd /home/allen/Downloads/php-7.3.18/ . -With-pdo-mysql-mit-Pdo-sqlite-mit Pear-mit Xmlrpc-mit XSL-mit Zlib-mit BZ2-mit Mhash-enable-bcmath--Enable-Inline-optimization--Enable-sable-mbable-opcmable-Opcache---Enable-Opdel-Opcning-Optima-Opdel-Opcning--Enable-Optima enable-sysvSem-enable-sysvshm-enable-xml-enable-fpm--with-Freetyp-dir-mit-with-with-libxml-dir--with-pcre-regex-enable-libxml-enable-zip--with-png-dir--with-jpeg-dire Es liegt ein Fehler vor:
Lösung:
Die Lösung lautet also wie folgt: cat ./konfigurieren | grep "freetype-config" -n 34847: wenn test -f "$i/bin/freetype-config"; dann 34849: FREETYPE2_CONFIG="$i/bin/freetype-config" 34855: as_fn_error $? "Freetype-Konfiguration nicht gefunden." "$LINENO" 5 36568: wenn test -f "$i/bin/freetype-config"; dann 36570: FREETYPE2_CONFIG="$i/bin/freetype-config" 36576: as_fn_error $? "Freetype-Konfiguration nicht gefunden." "$LINENO" 5 sed -i "s/freetype-config/pkg-config/g" ./konfigurieren cat ./konfigurieren | grep "FREETYPE2_CONFIG --cflags" -n 34858: FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` 36579: FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags` sed -i "s/FREETYPE2_CONFIG --cflags/FREETYPE2_CONFIG freetype2 --cflags/g" ./konfigurieren cat ./konfigurieren | grep "FREETYPE2_CONFIG --libs" -n 34859: FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` 36580: FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs` sed -i "s/FREETYPE2_CONFIG --libs/FREETYPE2_CONFIG freetype2 --libs/g" ./konfigurieren grep "freetype-config" -n 188: wenn test -f "$i/bin/freetype-config"; dann 190: FREETYPE2_CONFIG="$i/bin/freetype-config" 196: AC_MSG_ERROR([Freetype-Konfiguration nicht gefunden.]) sed -i "s/freetype-config/pkg-config/g" ./ext/gd/config.m4 Neu kompilieren und installieren OK Vielen Dank für die Verwendung von PHP. make -j 4 und sudo make install sudo cp php.ini-Produktion /usr/local/php/lib/php.ini sudo cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf sudo cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf vim /usr/local/php/etc/php-fpm.d/www.conf Listenmodus = 0666 pm.max_kinder = 128 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 10000 langsamlog = log/$pool.log.slow rlimit_files = 1024 sudo vim /etc/profile.d/php.sh export PATH=$PATH:/usr/local/php/bin/ sudo chmod 0777 /etc/profile.d/php.sh && Quelle /etc/profile.d/php.sh sudo cp sapi/fpm/php-fpm.service /etc/systemd/system/php.service Installieren Sie xdebug Laden Sie xdebug herunter: http://pecl.php.net/get/xdebug-2.9.6.tgz cd /home/allen/download tar zxf xdebug-2.9.6.tgz cd xdebug-2.9.6 phpize ./configure --with-php-config=/usr/local/php/bin/php-config make -j 4 und sudo make install Apcu installieren Laden Sie Apcu herunter: http://pecl.php.net/get/apcu-5.1.18.tgz cd /home/allen/Downloads tar zxf apcu-5.1.18.tgz CD apcu-5.1.18 phpize ./configure --with-php-config=/usr/local/php/bin/php-config make -j 4 und sudo make install PHP.INI bearbeiten sudo vim /usr/local/php/lib/php.ini Datum.Zeitzone = Asien/Shanghai exhibit_php = aus max_Ausführungszeit = 0 Speicherlimit = 4096 M display_errors = Ein cgi.fix_pathinfo=0 Erweiterungsverzeichnis = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/" Erweiterung=pgsql Erweiterung=apcu zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so [xdebug] xdebug.var_display_max_children=10240 xdebug.var_display_max_data=20480 xdebug.var_display_max_depth=50 Start-up sudo systemctl aktiviere php-fpm sudo chown -R mysql:mysql /usr/local/mariadb sudo chown -R nginx:nginx /usr/local/nginx sudo chown -R php:php /usr/local/php Neustart Dies ist das Ende dieses Artikels über die Schritte zum Erstellen der LNMP-Umgebung unter Ubuntu 20.04. Weitere Informationen zum Erstellen von LNMP unter Ubuntu 20.04 finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: MySQL-Serververbindung, Trennung und cmd-Bedienung
>>: Verwendung und Ausführungsprozess des HTTP-Moduls im Knoten
Bei der Verwendung von MySQL führen viele Entwick...
Vor Kurzem habe ich das Problem gelöst, dass Dock...
Fabric.js ist ein sehr nützliches Plug-In für Can...
Schritt 1: Holen Sie sich die MySQL YUM-Quelle Ge...
Inhaltsverzeichnis Was ist virtueller Dom? Warum ...
Die folgenden drei Methoden werden häufig verwende...
Inhaltsverzeichnis Vorwort Code-Implementierung I...
Code kopieren Der Code lautet wie folgt: <Obje...
Vorwort Jeder Entwickler, der mit JS in Berührung...
[LeetCode] 196.Doppelte E-Mails löschen Schreiben...
Dieser Artikel beschreibt, wie man Redis- und php...
Vorwort Ich habe gerade einen neuen VPS gekauft. ...
In diesem Artikel finden Sie eine ausführliche An...
1. Quelle des Problems Ein Freund von @水米田 hat mi...
Es gibt viele Tutorials im Internet und sie sind ...