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 joe.q.public@example.com\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 joe.q.public@example.com\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 joe.q.public@example.com\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

So installieren Sie MODX Revolution auf einem CentOS 7 LAMP VPS

So installieren Sie MODX Revolution auf einem CentOS 7 LAMP VPS

Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i

Installieren von McMyAdmin unter Ubuntu 14.10

Installieren von McMyAdmin unter Ubuntu 14.10

McMyAdmin ist ein Minecraft-Server-Kontrollfeld, mit dem Sie Ihren Server verwalten können. Obwohl McMyAdmin kostenlos ist, gibt es mehrere Editionen, von denen einige pai sind

Richten Sie einen TeamTalk-Server unter Linux ein

Richten Sie einen TeamTalk-Server unter Linux ein

TeamTalk ist ein Konferenzsystem, mit dem Benutzer hochwertige Audio- / Videogespräche führen, Text chatten, Dateien übertragen und Bildschirme freigeben können. Es i

So installieren und konfigurieren Sie CyberPanel auf Ihrem CentOS 7-Server

So installieren und konfigurieren Sie CyberPanel auf Ihrem CentOS 7-Server

Verwenden Sie ein anderes System? Einführung CyberPanel ist eines der ersten Control Panels auf dem Markt, das sowohl Open Source als auch OpenLiteSpeed ​​verwendet. Was ist das?

Installieren Sie phpBB With Apache unter Ubuntu 16.04

Installieren Sie phpBB With Apache unter Ubuntu 16.04

PhpBB ist ein Open Source Bulletin Board Programm. Dieser Artikel zeigt Ihnen, wie Sie phpBB auf einem Apache-Webserver unter Ubuntu 16.04 installieren. Es wurde geschrieben

Richten Sie einen Benutzer ohne Rootberechtigung mit Sudo Access unter Ubuntu ein

Richten Sie einen Benutzer ohne Rootberechtigung mit Sudo Access unter Ubuntu ein

Es kann gefährlich sein, nur einen Benutzer zu haben, nämlich root. Lassen Sie uns das beheben. Vultr bietet uns die Freiheit, mit unseren Benutzern und unseren Servern zu tun, was wir wollen

Installieren Sie eSpeak unter CentOS 7

Installieren Sie eSpeak unter CentOS 7

Verwenden Sie ein anderes System? ESpeak kann TTS-Audiodateien (Text-to-Speech) generieren. Diese können aus vielen Gründen nützlich sein, z. B. um Ihr eigenes Turin zu erstellen

So installieren Sie Thelia 2.3 unter CentOS 7

So installieren Sie Thelia 2.3 unter CentOS 7

Verwenden Sie ein anderes System? Thelia ist ein Open-Source-Tool zum Erstellen von E-Business-Websites und zum Verwalten von Online-Inhalten, die in PHP geschrieben wurden. Thelia Quellcode i

Installieren von Fuel CMS unter Ubuntu 16.04 LTS

Installieren von Fuel CMS unter Ubuntu 16.04 LTS

Verwenden Sie ein anderes System? Fuel CMS ist ein CodeIgniter-basiertes Content-Management-System. Der Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie t

Installieren und Verwenden von Yunohost unter Debian 7 x64

Installieren und Verwenden von Yunohost unter Debian 7 x64

Dieses Tutorial führt Sie durch die Installation des Yunohost Complete Server-Kontrollfelds unter Debian. Folgen Sie einfach dem Tutorial und Ihr Server wird in Betrieb sein

So installieren Sie Cockpit unter CentOS 7

So installieren Sie Cockpit unter CentOS 7

Cockpit ist ein kostenloses Open Source-Programm für die Linux-Serververwaltung. Es ist sehr leicht und hat eine schöne, einfach zu bedienende Weboberfläche. Es erlaubt System

So richten Sie ein GitHub Style Wiki mit Gollum unter CentOS 7 ein

So richten Sie ein GitHub Style Wiki mit Gollum unter CentOS 7 ein

Gollum ist die Git-basierte Wiki-Software, die als Backend des GitHub-Wikis verwendet wird. Durch die Bereitstellung von Gollum können Sie ein GitHub-ähnliches Wiki-System auf Ihnen hosten

So richten Sie die TCP-Optimierung unter Linux ein

So richten Sie die TCP-Optimierung unter Linux ein

Einführung Haben Sie Probleme mit der Konnektivität, wenn Besucher aus anderen Ländern auf Ihre Website zugreifen? Ich frage mich, warum die Download-Geschwindigkeit von Ihrem Foreig

So installieren Sie Gitea unter Fedora 29

So installieren Sie Gitea unter Fedora 29

Verwenden Sie ein anderes System? Gitea ist ein alternatives Open-Source-Versionskontrollsystem, das von Git unterstützt wird. Gitea ist in Golang geschrieben und ist

So stellen Sie Ghost v0.11 LTS unter Ubuntu 16.04 bereit

So stellen Sie Ghost v0.11 LTS unter Ubuntu 16.04 bereit

Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit 201 bei Entwicklern und normalen Benutzern immer beliebter wird

So installieren Sie Paste 2.1 auf einem Fedora 26 LAMP VPS

So installieren Sie Paste 2.1 auf einem Fedora 26 LAMP VPS

Verwenden Sie ein anderes System? Paste 2.1 ist eine einfache und flexible, kostenlose und Open-Source-Pastebin-Anwendung zum Speichern von Code, Text und mehr. Es war ursprünglich

So installieren Sie Pip unter Linux

So installieren Sie Pip unter Linux

Pip ist ein Tool zum Verwalten von Python-Paketen. Die Verwendung eines Paketmanagers ermöglicht eine effiziente Verwaltung Ihres Servers. In diesem Tutorial erkläre ich, wie t

So stellen Sie Google BBR unter CentOS 7 bereit

So stellen Sie Google BBR unter CentOS 7 bereit

BBR (Bottleneck Bandwidth and RTT) ist ein neuer Algorithmus zur Überlastungskontrolle, der von Google zum Linux-Kernel-TCP-Stack hinzugefügt wird. Mit BBR an Ort und Stelle,

So installieren Sie YOURLS unter CentOS 7

So installieren Sie YOURLS unter CentOS 7

YOURLS (Your Own URL Shortener) ist eine Open-Source-Anwendung zur URL-Verkürzung und Datenanalyse. In diesem Artikel werden wir den Installationsprozess behandeln

So aktivieren Sie TLS 1.3 in Apache unter Fedora 30

So aktivieren Sie TLS 1.3 in Apache unter Fedora 30

Verwenden Sie ein anderes System? TLS 1.3 ist eine Version des TLS-Protokolls (Transport Layer Security), das 2018 als vorgeschlagener Standard in RFC 8446 veröffentlicht wurde

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.