Installieren Sie den Caddy-Webserver von der Quelle aus, um die Lizenzkonformität unter Ubuntu 16.04 LTS zu gewährleisten

Im September 2017 wurde die Caddy-EULA geändert, und für alle Caddy-Instanzen, die von Unternehmen und persönlichen Websites betrieben werden, die Handel betreiben, ist eine kommerzielle Lizenz für die heruntergeladene Caddy-Binärdatei erforderlich. Dieses Tutorial hilft Kunden, die den Caddy-Webserver gemäß der neuen EULA installieren möchten. Zum Zeitpunkt des Schreibens, wenn Sie Caddy aus dem Quellcode kompilieren und Ihre eigene Binärdatei erstellen, ist keine kostenpflichtige Lizenz erforderlich, unabhängig davon, ob Sie ein Unternehmen sind oder auf Ihrer persönlichen Website Handel treiben. Es ist wichtig, die neueste EULA auf Konformität zu überprüfen, bevor Sie die Schritte in diesem Lernprogramm ausführen.

Eigenschaften:

  • Kurze, leicht verständliche Konfiguration
  • Mit Go gebaut
  • Erweiterbare Protokollierung
  • Extrem schnelle Zustellung statischer Dateien
  • Dynamische Site- und Proxy-Unterstützung
  • Interner Konfigurationsprüfer
  • Statische Binärdatei
  • Verwendet standardmäßig die von Mozilla empfohlenen modernen Chiffren
  • MITM-Erkennung (Mann in der Mitte)
  • SNI-Unterstützung (Server Name Indicator)
  • Automatisch Verschlüsseln Sie die Generierung / den Abruf / die Erneuerung von Zertifikaten
  • OCSP-Unterstützung
  • Unterstützung für virtuelle Hosts
  • Unterstützung für das Rendern von Markdown2html
  • Integrierte HTTP / 2-, QUIC- und Websocket-Unterstützung
  • Unterstützung für Lastausgleich, Reverse Proxy und SSL-Terminierung

Voraussetzungen

Systemupdate

Melden Sie sich als normaler Benutzer an, der über die Berechtigung zur Verwendung des Befehls sudo verfügt. Aktualisieren Sie das System wie folgt.

sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

Installieren Sie Caddy From Source

Laden Sie die neueste Release-Version des Caddy-Webserver-Quellcodes herunter. Dies enthält keine Plugins von Drittanbietern für Caddy.

go get -u github.com/mholt/caddy/caddy && go get -u github.com/caddyserver/builds && cd go/src/github.com/mholt/caddy/caddy

Optional: Wenn Sie das tls.dns.vultrdnsproviders-Plugin eines Drittanbieters benötigen, kopieren Sie Folgendes. Dadurch werden sowohl der Caddy-Quellcode als auch das tls.dns.vultrdnsproviders-Plugin eines Drittanbieters heruntergeladen, wenn Sie es verwenden möchten.

go get -u github.com/mholt/caddy/caddy && go get -u github.com/caddyserver/builds && go get -u github.com/caddyserver/dnsproviders/vultr && cd go/src/github.com/mholt/caddy/caddy && sed -i '38i\\t_ "github.com/caddyserver/dnsproviders/vultr"' caddymain/run.go

Kompilieren Sie die caddyBinärdatei. Das Kompilieren dauert weniger als eine Minute.

go run build.go

Überprüfen Sie die Version und Plugin-Liste der caddyBinärdatei.

./caddy -version && ./caddy -plugins

Kopieren Sie die Caddy-Binärdatei in ~/go/src/github.com/mholt/caddy/caddy/das /usr/binVerzeichnis und ändern Sie das Verzeichnis wieder in das Stammverzeichnis Ihres Benutzerverzeichnisses.

sudo cp caddy /usr/bin/ && cd

Erstellen Sie die caddy.servicesystemd-Datei im /etc/systemd/system/Verzeichnis mit dem echoBefehl.

sudo su -c "echo -e '[Unit]\nAfter=network-online.target\nDescription=Caddy HTTP/2 web server\nDocumentation=https://caddyserver.com/docs\nWants=network.target\n\n[Service]\nAmbientCapabilities=CAP_NET_BIND_SERVICE\nCapabilityBoundingSet=CAP_NET_BIND_SERVICE\nEnvironment=CADDYPATH=/etc/ssl/caddy\n## Environment=VULTR_API_KEY=XXXXXXXX ##Uncomment and add your Vultr API (API tab on the Settings page) if using the Vultr DNS Manager to handle DNS for your VPS instance.\nExecReload=/bin/kill -USR1 $MAINPID\nExecStart=/usr/bin/caddy -agree=true -conf=/etc/caddy/caddy.conf -quic -root=/var/tmp\nGroup=www-data\nKillMode=mixed\nKillSignal=SIGQUIT\nLimitNOFILE=1048576\nLimitNPROC=512\nNoNewPrivileges=true\nPrivateDevices=true\nPrivateTmp=true\nProtectHome=true\nProtectSystem=full\nReadWriteDirectories=/etc/ssl/caddy\nRestart=on-abnormal\nTimeoutStopSec=5s\nUser=www-data\n\n[Install]\nWantedBy=multi-user.target' > /etc/systemd/system/caddy.service"

Erstellen Sie das /etc/caddy/Verzeichnis, das die Konfigurationsdatei des Caddy-Webservers enthält. das /etc/ssl/caddy/Verzeichnis, das die Let's Encrypt-Zertifikate enthält; das /usr/share/caddy/Verzeichnis, das die Beispiel-HTML-Datei enthält; und das /var/log/caddy/Verzeichnis, das die Caddy-Webserver-Protokolle enthält, mit dem mkdirBefehl. Ändern Sie den Gruppeneigentum www-datamit dem chownBefehl in die Verzeichnisse /etc/ssl/caddy/und in die Gruppe /var/log/caddy/. Entfernen Sie ausführbare, lesbare und beschreibbare Weltberechtigungen mit dem chmodBefehl zum Sichern des /etc/ssl/caddy/Verzeichnisses.

sudo mkdir -p {/etc/{caddy/conf.d,ssl/caddy},/usr/share/caddy,/var/log/caddy} && sudo chown www-data /etc/ssl/caddy/ /var/log/caddy/ && sudo chmod 750 /etc/ssl/caddy/

Aktivieren Sie den Caddy-Webserver.

sudo systemctl daemon-reload && sudo systemctl enable caddy

Konfigurieren Sie den Caddy-Webserver

In den folgenden Abschnitten wird erläutert, wie Sie Caddy für verschiedene Szenarien konfigurieren. Sie können diese als Referenz verwenden und zu dem Abschnitt springen, der Ihren Anforderungen entspricht.

Richten Sie den Caddy so ein, dass statische HTML-Seiten angezeigt werden (nicht SSL)

Erstellen Sie eine grundlegende Konfigurationsvorlagendatei auf Stammebene mit dem Namen caddy.confim /etc/caddy/Verzeichnis, die einen Import für die eigentliche vhost-Konfigurationsdatei für eine statische HTML-Beispielwebsite verwendet, die example.com.confim /etc/caddy/conf.d/Verzeichnis mit dem echoBefehl benannt ist.

sudo su -c 'echo -e "import conf.d/*.conf" > /etc/caddy/caddy.conf' && sudo su -c 'echo -e "example.com:80 {\n\tredir http://www.example.com{url}\n}\nwww.example.com:80 {\n\terrors /var/log/caddy/example.com-error.log\n\timport header.protection\n\tlog /var/log/caddy/example.com-access.log\n\troot /var/www/html/\n}" > /etc/caddy/conf.d/example.com.conf' && sudo su -c 'echo -e "header / {\n\tX-XSS-Protection \"1; mode=block\"\n\tX-Content-Type-Options \"nosniff\"\n\tX-Frame-Options \"SAMEORIGIN\"\n}" > /etc/caddy/conf.d/header.protection'

Erstellen Sie das /var/www/htmlVerzeichnis und erstellen Sie index.htmlmit dem echoBefehl ein einfaches Inneres .

sudo mkdir -p /var/www/html && sudo su -c 'echo -e "<!DOCTYPE html>"\\n"<head>"\\n\\t"<meta charset="utf-8">"\\n\\t"<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">"\\n\\t"<title>Static HTML Page"\\n\\t"</title>"\\n\\t"<meta name="description" content="">"\\n\\t"<meta name="viewport" content="width=device-width, initial-scale=1">"\\n"</head>"\\n"<body>"\\n\\t"<p>Caddy is working."\\n\\t"</p>"\\n"</body>"\\n"</html>" > /var/www/html/index.html'

Starten Sie den Caddy-Webserver.

sudo systemctl start caddy

Öffnen Sie Ihren Webbrowser für den FQDN ( example.com) Ihrer VPS-Instanz.

Richten Sie den Caddy so ein, dass statische HTML-Seiten (SSL) angezeigt werden.

Erstellen Sie eine grundlegende Konfigurationsvorlagendatei auf Stammebene mit dem Namen caddy.confim /etc/caddy/Verzeichnis, die einen Import für die eigentliche vhost-Konfigurationsdatei für eine statische HTML-Beispielwebsite verwendet, die example.com.confim /etc/caddy/conf.d/Verzeichnis mit dem echoBefehl benannt ist.

sudo su -c 'echo -e "import conf.d/*.conf" > /etc/caddy/caddy.conf' && sudo su -c 'echo -e "example.com {\n\tredir https://www.example.com{url}\n}\nwww.example.com {\n\terrors /var/log/caddy/example.com-error.log\n\timport header.protection\n\tlog /var/log/caddy/example.com-access.log\n\troot /var/www/html/\n\ttls [email protected]\n}" > /etc/caddy/conf.d/example.com.conf' && sudo su -c 'echo -e "header / {\n\tX-XSS-Protection \"1; mode=block\"\n\tX-Content-Type-Options \"nosniff\"\n\tX-Frame-Options \"SAMEORIGIN\"\n}" > /etc/caddy/conf.d/header.protection'

Erstellen Sie das /var/www/htmlVerzeichnis und erstellen Sie index.htmlmit dem echoBefehl ein einfaches Inneres .

sudo mkdir -p /var/www/html && sudo su -c 'echo -e "<!DOCTYPE html>"\\n"<head>"\\n\\t"<meta charset="utf-8">"\\n\\t"<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">"\\n\\t"<title>Static HTML Page"\\n\\t"</title>"\\n\\t"<meta name="description" content="">"\\n\\t"<meta name="viewport" content="width=device-width, initial-scale=1">"\\n"</head>"\\n"<body>"\\n\\t"<p>Caddy is working."\\n\\t"</p>"\\n"</body>"\\n"</html>" > /var/www/html/index.html'

Starten Sie den Caddy-Webserver.

sudo systemctl start caddy

Öffnen Sie Ihren Webbrowser für den FQDN ( example.com) Ihrer VPS-Instanz.

Richten Sie den Caddy so ein, dass er PHP-Seiten verarbeitet, indem Sie den PHP-FPM-Server (ohne SSL) verwenden.

Erstellen Sie eine grundlegende Konfigurationsvorlagendatei auf Stammebene mit dem Namen caddy.confim /etc/caddy/Verzeichnis, die einen Import für die eigentliche vhost-Konfigurationsdatei für eine PHPInfo-Beispielseite verwendet, die example.com.confim /etc/caddy/conf.d/Verzeichnis mit dem echoBefehl benannt ist.

sudo su -c 'echo -e "import conf.d/*.conf" > /etc/caddy/caddy.conf' && sudo su -c 'echo -e "example.com:80 {\n\tredir http://www.example.com{url}\n}\nwww.example.com:80 {\n\terrors /var/log/caddy/example.com-error.log\n\tfastcgi / /var/run/php/php7.0-fpm.sock php\n\timport header.protection\n\tlog /var/log/caddy/example.com-access.log\n\troot /var/www/html/\n}" > /etc/caddy/conf.d/example.com.conf' && sudo su -c 'echo -e "header / {\n\tX-XSS-Protection \"1; mode=block\"\n\tX-Content-Type-Options \"nosniff\"\n\tX-Frame-Options \"SAMEORIGIN\"\n}" > /etc/caddy/conf.d/header.protection'

Erstellen Sie ein einfaches index.phpim /var/www/htmlVerzeichnis der Verwendung von echoBefehl.

sudo su -c 'echo -e "<?php\nphpinfo();\n?>" > /var/www/html/index.php'

Installieren Sie den PHP-FPM-Server, um PHP-Dateien zu verarbeiten.

sudo apt install php-fpm -y

Starten Sie den Caddy-Webserver.

sudo systemctl start caddy

Öffnen Sie Ihren Webbrowser für den FQDN ( example.com) Ihrer VPS-Instanz.

Richten Sie den Caddy so ein, dass er PHP-Seiten verarbeitet, indem Sie den PHP-FPM-Server (SSL) verwenden.

Erstellen Sie eine einfache Konfigurationsvorlagendatei auf Stammebene mit dem Namen caddy.confim /etc/caddy/Verzeichnis, die einen Import für die eigentliche vhost-Konfigurationsdatei für eine Beispiel-Website für dynamische Tests verwendet, die example.com.confim /etc/caddy/conf.d/Verzeichnis mit dem echoBefehl benannt ist.

sudo su -c 'echo -e "import conf.d/*.conf" > /etc/caddy/caddy.conf' && sudo su -c 'echo -e "example.com {\n\tredir https://www.example.com{url}\n}\nwww.example.com {\n\terrors /var/log/caddy/example.com-error.log\n\tfastcgi / /var/run/php/php7.0-fpm.sock php\n\timport header.protection\n\tlog /var/log/caddy/example.com-access.log\n\troot /var/www/html/\n\ttls [email protected]\n}" > /etc/caddy/conf.d/example.com.conf' && sudo su -c 'echo -e "header / {\n\tX-XSS-Protection \"1; mode=block\"\n\tX-Content-Type-Options \"nosniff\"\n\tX-Frame-Options \"SAMEORIGIN\"\n}" > /etc/caddy/conf.d/header.protection'

Erstellen Sie ein einfaches index.phpim /var/www/htmlVerzeichnis der Verwendung von echoBefehl.

sudo su -c 'echo -e "<?php\nphpinfo();\n?>" > /var/www/html/index.php'

Installieren Sie den PHP-FPM-Server, um PHP-Dateien zu verarbeiten.

sudo apt install php-fpm -y

Starten Sie den Caddy-Webserver.

sudo systemctl start caddy

Öffnen Sie Ihren Webbrowser für den FQDN ( example.com) Ihrer VPS-Instanz.

Richten Sie den Caddy so ein, dass Wordpress ausgeführt wird, indem Sie den PHP-FPM-Server (ohne SSL) verwenden.

Erstellen Sie eine grundlegende Konfigurationsvorlagendatei auf Stammebene mit dem Namen caddy.confim /etc/caddy/Verzeichnis, die einen Import für die eigentliche vhost-Konfigurationsdatei für eine Beispiel-Wordpress-Testwebsite verwendet, die example.com.confim /etc/caddy/conf.d/Verzeichnis mit dem echoBefehl benannt ist.

sudo su -c 'echo -e "import conf.d/*.conf" > /etc/caddy/caddy.conf' && sudo su -c 'echo -e "example.com:80 {\n\tredir http://www.example.com{url}\n}\nwww.example.com:80 {\n\terrors /var/log/caddy/example.com-error.log\n\tfastcgi / /var/run/php/php7.0-fpm.sock php\n\timport header.protection\n\tlog /var/log/caddy/example.com-access.log\n\trewrite {\n\t\tif {path} not_starts_with /wp-admin\n\t\tif {path} not_starts_with /wp-content\n\t\tif {path} not_starts_with /wp-includes\n\t\tto {path} {path}/ /index.php\n\t}\n\troot /var/www/html/\n}" > /etc/caddy/conf.d/example.com.conf' && sudo su -c 'echo -e "header / {\n\tX-XSS-Protection \"1; mode=block\"\n\tX-Content-Type-Options \"nosniff\"\n\tX-Frame-Options \"SAMEORIGIN\"\n}" > /etc/caddy/conf.d/header.protection'

Installieren Sie das unzipProgramm, um die Wordpress-Datei tar-gzipped ( latest.tar.gz) zu extrahieren .

sudo apt install unzip

Laden Sie die latest.tar.gzDatei in das /tmp/Verzeichnis herunter , ändern Sie die Benutzer- und Gruppenberechtigungen des /var/www/htmlVerzeichnisses in Benutzer www-dataund Gruppe www-dataund extrahieren Sie den Inhalt der latest.tar.gzDatei in das /var/www/html/Verzeichnis.

sudo su - www-data -c "wget -N -P /tmp/ -q https://wordpress.org/latest.tar.gz" -s /bin/bash && sudo chown -R www-data.www-data /var/www/html && sudo su - www-data -c "tar -C /var/www/html/ -zxf /tmp/latest.tar.gz --strip-components=1" -s /bin/bash  && sudo su - www-data -c "rm /tmp/latest.tar.gz" -s /bin/bash

Installieren Sie den PHP-FPM-Server, um PHP-Dateien und die erforderlichen PHP-Erweiterungen zu verarbeiten, die für die Interaktion mit Wordpress erforderlich sind.

sudo apt install php-curl php-fpm php-imagick php-mbstring php-mcrypt php-mysql php-pspell php-xmlrpc -y

Installieren Sie den MariaDB-Datenbankserver, um Daten für Wordpress zu speichern.

sudo apt install mariadb-server -y

Optional: Deaktivieren Sie diese Optionskip-name-resolve , um die DNS-Suchstrafe für Clientverbindungen zu vermeiden. Deaktivieren Sie den Datenbank- TCP/IPListener und verwenden Sie nur Unix-Sockets.

sudo sed -i '26iskip-name-resolve\nskip-networking' /etc/mysql/mariadb.conf.d/50-server.cnf

Starten Sie den MariaDB-Datenbankserver mit den neuen Konfigurationsänderungen neu.

sudo systemctl restart mysql

Sichern Sie den MariaDB-Datenbankserver. Ersetzen Sie den ********Halter unten im ersten Befehl durch ein neues Root-Passwort.

sudo mysql -e "UPDATE mysql.user SET Password=PASSWORD('********') WHERE User='root'" && sudo mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1')" && sudo mysql -e "DELETE FROM mysql.user WHERE User=''" && sudo mysql -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\_%'" && sudo mysql -e "" && sudo mysql -e "FLUSH PRIVILEGES"

Erstellen Sie eine Datenbank wordpress_example_comfür Wordpress. ein spezifischer Datenbankbenutzer, wordpress_example_com_adminund die minimalen Datenbankberechtigungen erforderlich, ( ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, und UPDATE) für Wordpress Kern und Tag Plugin - Installationen zu Tag funktioniert und Kern / Plugin - Updates. Ersetzen Sie die example_comin wordpress_example_commit Ihrem tatsächlichen Domain - Namen, example_comin wordpress_example_com_adminmit Ihrem tatsächlichen Domain - Namen und ********mit einem neuen Passwort speziell für den wordpress_example_com_adminBenutzer.

sudo mysql -e "CREATE DATABASE wordpress_example_com DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci" && sudo mysql -e "CREATE USER 'wordpress_example_com_admin'@'localhost' IDENTIFIED BY '********'; GRANT USAGE ON *.* TO 'wordpress_example_com_admin'@'localhost';" && sudo mysql -e "GRANT ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, UPDATE ON wordpress_example_com.* TO 'wordpress_example_com_admin'@'localhost';" && sudo mysql -e "FLUSH PRIVILEGES"

Erstellen Sie die Wordpress-Konfigurationsdatei wp-config.phpim /var/www/htmlVerzeichnis. Ersetzen Sie die example_comin wordpress_example_commit Ihrem tatsächlichen Domain - Namen, example_comin wordpress_example_com_adminmit Ihrem tatsächlichen Domain - Namen und ********mit einem neuen Passwort speziell für den wordpress_example_com_adminBenutzer.

sudo su - www-data -c 'echo -e "<?php\ndefine('\'DB_CHARSET''\'', '\'utf8''\'');\ndefine('\'DB_COLLATE''\'', '\'''\'');\ndefine('\'DB_HOST''\'', '\'localhost''\'');\ndefine('\'DB_NAME''\'', '\'wordpress_example_com''\'');\ndefine('\'DB_PASSWORD''\'', '\'********''\'');\ndefine('\'DB_USER''\'', '\'wordpress_example_com_admin''\'');\ndefine('\'FS_METHOD''\'', '\'direct''\'');\ndefine('\'WP_DEBUG''\'', false);" > /var/www/html/wp-config.php' -s /bin/bash && sudo su -c www-data -c "curl -s https://api.wordpress.org/secret-key/1.1/salt/ >> /var/www/html/wp-config.php" && sudo su - www-data -c 'echo -e "\$table_prefix  = '\'wp_''\'';\nif ( !defined('\'ABSPATH''\'') )\n\tdefine('\'ABSPATH''\'', dirname(__FILE__) . '\'/''\'');\nrequire_once(ABSPATH . '\'wp-settings.php''\'');\nfunction _remove_script_version( \$src ){ if ( strpos( \$src, '\'ver=''\'' ) ) \$src = remove_query_arg( '\'ver''\'', \$src ); return \$src; }\nadd_filter( '\'script_loader_src''\'', '\'_remove_script_version''\'', 15, 1 );\nadd_filter( '\'style_loader_src''\'', '\'_remove_script_version''\'', 15, 1 );" >> /var/www/html/wp-config.php' -s /bin/bash

Starten Sie den Caddy-Webserver.

sudo systemctl start caddy

Öffnen Sie Ihren Webbrowser für den FQDN ( example.com) Ihrer VPS-Instanz. Sie sehen eine Seite zur Sprachauswahl. Klicken Sie nach Auswahl der Sprache auf die blaue ContinueSchaltfläche unten rechts, um mit dem nächsten Schritt der Wordpress-Installation fortzufahren.

Geben Sie auf der nächsten Seite einen Titel für Ihre Website in das Site TitleFeld (1) und den Benutzernamen eines Administrators in das UsernameFeld (2) ein. Verwenden Sie das generierte Passwort oder geben Sie Ihr eigenes Passwort in das PasswordFeld (3) ein. Geben Sie eine gültige E-Mail-Adresse in das Your EmailFeld (4) ein und aktivieren oder deaktivieren Sie die Search Engine VisibilityOption (5), je nachdem, ob sich Ihr Standort in der Bauphase befindet. Wenn Sie zufrieden sind, klicken Sie auf die graue Install WordpressSchaltfläche (6), um die Wordpress-Einrichtung abzuschließen.

Sie gelangen in den Wordpress-Verwaltungsbereich. Die Erstinstallation von Wordpress ist nun abgeschlossen.

Richten Sie den Caddy so ein, dass Wordpress ausgeführt wird, indem Sie den PHP-FPM-Server (ohne SSL) verwenden.

Erstellen Sie eine grundlegende Konfigurationsvorlagendatei auf Stammebene mit dem Namen caddy.confim /etc/caddy/Verzeichnis, die einen Import für die eigentliche vhost-Konfigurationsdatei für eine Beispiel-Wordpress-Testwebsite verwendet, die example.com.confim /etc/caddy/conf.d/Verzeichnis mit dem echoBefehl benannt ist.

sudo su -c 'echo -e "import conf.d/*.conf" > /etc/caddy/caddy.conf' && sudo su -c 'echo -e "example.com {\n\tredir https://www.example.com{url}\n}\nwww.example.com {\n\terrors /var/log/caddy/example.com-error.log\n\tfastcgi / /var/run/php/php7.0-fpm.sock php\n\timport header.protection\n\tlog /var/log/caddy/example.com-access.log\n\trewrite {\n\t\tif {path} not_starts_with /wp-admin\n\t\tif {path} not_starts_with /wp-content\n\t\tif {path} not_starts_with /wp-includes\n\t\tto {path} {path}/ /index.php\n\t}\n\troot /var/www/html/\n\ttls [email protected]\n}" > /etc/caddy/conf.d/example.com.conf' && sudo su -c 'echo -e "header / {\n\tX-XSS-Protection \"1; mode=block\"\n\tX-Content-Type-Options \"nosniff\"\n\tX-Frame-Options \"SAMEORIGIN\"\n}" > /etc/caddy/conf.d/header.protection'

Installieren Sie das unzipProgramm, um die Wordpress-Tar-gzipped-Datei ( latest.tar.gz) zu extrahieren .

sudo apt install unzip

Laden Sie die latest.tar.gzDatei in das /tmp/Verzeichnis herunter , ändern Sie die Benutzer- und Gruppenberechtigungen des /var/www/htmlVerzeichnisses in Benutzer www-dataund Gruppe www-dataund extrahieren Sie den Inhalt der latest.tar.gzDatei in das /var/www/html/Verzeichnis.

sudo su - www-data -c "wget -N -P /tmp/ -q https://wordpress.org/latest.tar.gz" -s /bin/bash && sudo chown -R www-data.www-data /var/www/html && sudo su - www-data -c "tar -C /var/www/html/ -zxf /tmp/latest.tar.gz --strip-components=1" -s /bin/bash  && sudo su - www-data -c "rm /tmp/latest.tar.gz" -s /bin/bash

Installieren Sie den PHP-FPM-Server, um PHP-Dateien und die erforderlichen PHP-Erweiterungen zu verarbeiten, die für die Interaktion mit Wordpress erforderlich sind.

sudo apt install php-curl php-fpm php-imagick php-mbstring php-mcrypt php-mysql php-pspell php-xmlrpc -y

Installieren Sie den MariaDB-Datenbankserver, um Daten für Wordpress zu speichern.

sudo apt install mariadb-server -y

Optional: Deaktivieren Sie diese Optionskip-name-resolve , um die DNS-Suchstrafe für Clientverbindungen zu vermeiden. Deaktivieren Sie den Datenbank-TCP / IP-Listener und verwenden Sie nur Unix-Sockets.

sudo sed -i '26iskip-name-resolve\nskip-networking' /etc/mysql/mariadb.conf.d/50-server.cnf

Starten Sie den MariaDB-Datenbankserver mit den neuen Konfigurationsänderungen neu.

sudo systemctl restart mysql

Sichern Sie den MariaDB-Datenbankserver. Ersetzen Sie den ********Halter unten im ersten Befehl durch ein neues Root-Passwort.

sudo mysql -e "UPDATE mysql.user SET Password=PASSWORD('********') WHERE User='root'" && sudo mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1')" && sudo mysql -e "DELETE FROM mysql.user WHERE User=''" && sudo mysql -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\_%'" && sudo mysql -e "" && sudo mysql -e "FLUSH PRIVILEGES"

Erstellen Sie eine Datenbank wordpress_example_comfür Wordpress. ein spezifischer Datenbankbenutzer, wordpress_example_com_adminund die minimal erforderlichen Datenbankberechtigungen ( ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, und UPDATE) für Wordpress Kern und Installationen Tag zu Tag Plugin funktioniert und Kern / Plugin - Updates. Ersetzen Sie die example_comin wordpress_example_commit Ihrem tatsächlichen Domain - Namen, example_comin wordpress_example_com_adminmit Ihrem tatsächlichen Domain - Namen und ********mit einem neuen Passwort speziell für den wordpress_example_com_adminBenutzer.

sudo mysql -e "CREATE DATABASE wordpress_example_com DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci" && sudo mysql -e "CREATE USER 'wordpress_example_com_admin'@'localhost' IDENTIFIED BY '********'; GRANT USAGE ON *.* TO 'wordpress_example_com_admin'@'localhost';" && sudo mysql -e "GRANT ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, UPDATE ON wordpress_example_com.* TO 'wordpress_example_com_admin'@'localhost';" && sudo mysql -e "FLUSH PRIVILEGES"

Erstellen Sie die Wordpress-Konfigurationsdatei wp-config.phpim /var/www/htmlVerzeichnis. Ersetzen Sie die example_comin wordpress_example_commit Ihrem tatsächlichen Domain - Namen, example_comin wordpress_example_com_adminmit Ihrem tatsächlichen Domain - Namen und ********mit einem neuen Passwort speziell für den wordpress_example_com_adminBenutzer.

sudo su - www-data -c 'echo -e "<?php\ndefine('\'DB_CHARSET''\'', '\'utf8''\'');\ndefine('\'DB_COLLATE''\'', '\'''\'');\ndefine('\'DB_HOST''\'', '\'localhost''\'');\ndefine('\'DB_NAME''\'', '\'wordpress_example_com''\'');\ndefine('\'DB_PASSWORD''\'', '\'********''\'');\ndefine('\'DB_USER''\'', '\'wordpress_example_com_admin''\'');\ndefine('\'FS_METHOD''\'', '\'direct''\'');\ndefine('\'WP_DEBUG''\'', false);" > /var/www/html/wp-config.php' -s /bin/bash && sudo su -c www-data -c "curl -s https://api.wordpress.org/secret-key/1.1/salt/ >> /var/www/html/wp-config.php" && sudo su - www-data -c 'echo -e "\$table_prefix  = '\'wp_''\'';\nif ( !defined('\'ABSPATH''\'') )\n\tdefine('\'ABSPATH''\'', dirname(__FILE__) . '\'/''\'');\nrequire_once(ABSPATH . '\'wp-settings.php''\'');\nfunction _remove_script_version( \$src ){ if ( strpos( \$src, '\'ver=''\'' ) ) \$src = remove_query_arg( '\'ver''\'', \$src ); return \$src; }\nadd_filter( '\'script_loader_src''\'', '\'_remove_script_version''\'', 15, 1 );\nadd_filter( '\'style_loader_src''\'', '\'_remove_script_version''\'', 15, 1 );" >> /var/www/html/wp-config.php' -s /bin/bash

Starten Sie den Caddy-Webserver.

sudo systemctl start caddy

Öffnen Sie Ihren Webbrowser für den FQDN ( example.com) Ihrer VPS-Instanz. Klicken Sie nach Auswahl der Sprache auf die blaue ContinueSchaltfläche unten rechts, um mit dem nächsten Schritt der Wordpress-Installation fortzufahren.

Geben Sie auf der nächsten Seite einen Titel für Ihre Website in das Site TitleFeld (1) und den Benutzernamen eines Administrators in das UsernameFeld (2) ein. Verwenden Sie das generierte Passwort oder geben Sie Ihr eigenes Passwort in das PasswordFeld (3) ein. Geben Sie eine gültige E-Mail-Adresse in das Your EmailFeld (4) ein und aktivieren oder deaktivieren Sie die Search Engine VisibilityOption (5), je nachdem, ob sich Ihr Standort in der Bauphase befindet. Wenn Sie zufrieden sind, klicken Sie auf die graue Install WordpressSchaltfläche (6), um die Wordpress-Einrichtung abzuschließen.

Sie gelangen in den Wordpress-Verwaltungsbereich. Die Erstinstallation von Wordpress ist nun abgeschlossen.



Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.