En septembre 2017, le CLUF Caddy a été modifié et toutes les instances Caddy gérées par des entreprises et des sites Web personnels qui font du commerce nécessitent une licence commerciale pour le binaire téléchargé Caddy. Ce tutoriel aide les clients qui souhaitent installer le serveur Web Caddy conformément au nouveau CLUF. Au moment de la rédaction, lors de la compilation de Caddy à partir de la source et de la création de votre propre binaire, une licence payante n'est pas requise, que vous soyez une entreprise ou que vous fassiez du commerce sur votre site Web personnel. Il est important de vérifier la conformité du dernier CLUF avant de suivre les étapes de ce didacticiel.
Caractéristiques:
- Configuration courte et facilement compréhensible
- Construit avec Go
- Journalisation extensible
- Livraison de fichiers statiques extrêmement rapide
- Site dynamique et support proxy
- Vérificateur de configuration interne
- Binaire statique
- Utilise les chiffrements modernes recommandés par Mozilla par défaut
- Détection MITM (homme au milieu)
- Prise en charge SNI (Server Name Indicator)
- Génération / récupération / renouvellement automatique des certificats Let's Encrypt
- Prise en charge OCSP
- Prise en charge des hôtes virtuels
- Prise en charge du rendu Markdown2html
- Prise en charge intégrée HTTP / 2, QUIC et Websocket
- Prise en charge de l'équilibrage de charge, du proxy inverse et de la terminaison SSL
Conditions préalables
Mise à jour du système
Connectez-vous en tant qu'utilisateur normal autorisé à utiliser la commande sudo. Mettez à jour le système comme suit.
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
Installer Caddy à partir de la source
Téléchargez la dernière version du code source du serveur Web Caddy. Cela ne contient aucun plugin tiers pour Caddy.
go get -u github.com/mholt/caddy/caddy && go get -u github.com/caddyserver/builds && cd go/src/github.com/mholt/caddy/caddy
Facultatif: si vous avez besoin du tls.dns.vultr
plug-in dnsproviders tiers , copiez ce qui suit. Cela téléchargera à la fois le code source Caddy et le tls.dns.vultr
plugin tiers dnsproviders si vous souhaitez l'utiliser.
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
Compilez le caddy
binaire. Cela prendra moins d'une minute à compiler.
go run build.go
Vérifiez la version et la liste des plugins du caddy
binaire.
./caddy -version && ./caddy -plugins
Copiez le binaire Caddy situé dans ~/go/src/github.com/mholt/caddy/caddy/
le /usr/bin
répertoire et changez le répertoire à la racine de votre répertoire utilisateur.
sudo cp caddy /usr/bin/ && cd
Créez le caddy.service
fichier systemd dans le /etc/systemd/system/
répertoire à l'aide de la echo
commande.
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"
Créez le /etc/caddy/
répertoire, qui contiendra le fichier de configuration du serveur Web Caddy; le /etc/ssl/caddy/
répertoire, qui contiendra les certificats Let's Encrypt; le /usr/share/caddy/
répertoire, qui contiendra l'exemple de fichier html; et le /var/log/caddy/
répertoire, qui contiendra les journaux du serveur Web Caddy, à l'aide de la mkdir
commande. Remplacez le groupe par le www-data
groupe à l'aide de la chown
commande des répertoires /etc/ssl/caddy/
et /var/log/caddy/
. Supprimez les autorisations exécutables, lisibles et inscriptibles du monde, à l'aide de la chmod
commande pour sécuriser le /etc/ssl/caddy/
répertoire.
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/
Activez le serveur Web Caddy.
sudo systemctl daemon-reload && sudo systemctl enable caddy
Chaque section ci-dessous explique comment configurer Caddy pour différents scénarios. Vous pouvez les utiliser pour référence et passer à la section qui correspond à vos besoins.
Configurer Caddy pour afficher des pages HTML statiques (non SSL)
Créez un fichier de modèle de configuration de base au niveau racine nommé caddy.conf
dans le /etc/caddy/
répertoire, qui utilise une importation pour le fichier de configuration vhost réel pour un exemple de site Web HTML statique nommé example.com.conf
dans le /etc/caddy/conf.d/
répertoire à l'aide de la echo
commande.
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'
Créez le /var/www/html
répertoire et créez un simple index.html
intérieur à l'aide de la echo
commande.
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'
Démarrez le serveur Web Caddy.
sudo systemctl start caddy
Ouvrez votre navigateur Web sur le FQDN ( example.com
) de votre instance VPS.
Configurer Caddy pour afficher des pages HTML statiques (SSL)
Créez un fichier de modèle de configuration de base au niveau racine nommé caddy.conf
dans le /etc/caddy/
répertoire qui utilise une importation pour le fichier de configuration vhost réel pour un exemple de site Web HTML statique nommé example.com.conf
dans le /etc/caddy/conf.d/
répertoire à l'aide de la echo
commande.
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'
Créez le /var/www/html
répertoire et créez un simple index.html
intérieur à l'aide de la echo
commande.
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'
Démarrez le serveur Web Caddy.
sudo systemctl start caddy
Ouvrez votre navigateur Web sur le FQDN ( example.com
) de votre instance VPS.
Configurer Caddy pour traiter les pages PHP en utilisant le serveur PHP-FPM (non SSL)
Créez un fichier de modèle de configuration de niveau racine de base nommé caddy.conf
dans le /etc/caddy/
répertoire qui utilise une importation pour le fichier de configuration vhost réel pour un exemple de page PHPInfo nommé example.com.conf
dans le /etc/caddy/conf.d/
répertoire à l'aide de la echo
commande.
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'
Créez un simple index.php
dans le /var/www/html
répertoire à l'aide de la echo
commande.
sudo su -c 'echo -e "<?php\nphpinfo();\n?>" > /var/www/html/index.php'
Installez le serveur PHP-FPM pour traiter les fichiers PHP.
sudo apt install php-fpm -y
Démarrez le serveur Web Caddy.
sudo systemctl start caddy
Ouvrez votre navigateur Web sur le FQDN ( example.com
) de votre instance VPS.
Configurer Caddy pour traiter les pages PHP en utilisant le serveur PHP-FPM (SSL)
Créez un fichier de modèle de configuration de niveau racine de base nommé caddy.conf
dans le /etc/caddy/
répertoire qui utilise une importation pour le fichier de configuration vhost réel pour un exemple de site Web de test dynamique nommé example.com.conf
dans le /etc/caddy/conf.d/
répertoire à l'aide de la echo
commande.
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'
Créez un simple index.php
dans le /var/www/html
répertoire à l'aide de la echo
commande.
sudo su -c 'echo -e "<?php\nphpinfo();\n?>" > /var/www/html/index.php'
Installez le serveur PHP-FPM pour traiter les fichiers PHP.
sudo apt install php-fpm -y
Démarrez le serveur Web Caddy.
sudo systemctl start caddy
Ouvrez votre navigateur Web sur le FQDN ( example.com
) de votre instance VPS.
Configurer Caddy pour exécuter Wordpress en utilisant le serveur PHP-FPM (non SSL)
Créez un fichier de modèle de configuration de niveau racine de base nommé caddy.conf
dans le /etc/caddy/
répertoire qui utilise une importation pour le fichier de configuration vhost réel pour un exemple de site Web de test Wordpress nommé example.com.conf
dans le /etc/caddy/conf.d/
répertoire à l'aide de la echo
commande.
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'
Installez le unzip
programme afin d'extraire le fichier compressé tar Wordpress ( latest.tar.gz
).
sudo apt install unzip
Téléchargez le latest.tar.gz
fichier dans le /tmp/
répertoire, modifiez les autorisations d'utilisateur et de groupe du /var/www/html
répertoire pour l'utilisateur www-data
et le groupe www-data
et extrayez le contenu du latest.tar.gz
fichier dans le /var/www/html/
répertoire.
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
Installez le serveur PHP-FPM pour traiter les fichiers PHP et les extensions PHP requises pour interagir avec Wordpress.
sudo apt install php-curl php-fpm php-imagick php-mbstring php-mcrypt php-mysql php-pspell php-xmlrpc -y
Installez le serveur de base de données MariaDB pour stocker les données pour Wordpress.
sudo apt install mariadb-server -y
Facultatif: désactivez cette optionskip-name-resolve
pour éviter la pénalité de recherche DNS pour les connexions client, désactivez l' TCP/IP
écouteur de base de données et utilisez uniquement des sockets Unix.
sudo sed -i '26iskip-name-resolve\nskip-networking' /etc/mysql/mariadb.conf.d/50-server.cnf
Redémarrez le serveur de base de données MariaDB avec les nouvelles modifications de configuration.
sudo systemctl restart mysql
Sécurisez le serveur de base de données MariaDB. Remplacez le ********
support ci-dessous dans la première commande par un nouveau mot de passe root.
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"
Créez une base de données wordpress_example_com
, pour Wordpress; un utilisateur de base de données spécifique, wordpress_example_com_admin
et les autorisations de base de données minimales nécessaires, ( ALTER
, CREATE
, DELETE
, DROP
, INDEX
, INSERT
, SELECT
, & UPDATE
), pour le noyau Wordpress et le jour des installations plug - ins à jour le fonctionnement et le noyau / plugin mises à jour. Remplacez le example_com
dans wordpress_example_com
votre nom de domaine réel, example_com
en wordpress_example_com_admin
votre nom de domaine réel et ********
avec un nouveau mot de passe spécifique pour l' wordpress_example_com_admin
utilisateur.
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"
Créez le fichier de configuration Wordpress,, wp-config.php
dans le /var/www/html
répertoire. Remplacez le example_com
dans wordpress_example_com
votre nom de domaine réel, example_com
en wordpress_example_com_admin
votre nom de domaine réel et ********
avec un nouveau mot de passe spécifique pour l' wordpress_example_com_admin
utilisateur.
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
Démarrez le serveur Web Caddy.
sudo systemctl start caddy
Ouvrez votre navigateur Web sur le FQDN ( example.com
) de votre instance VPS. Vous verrez une page de sélection de langue. Après avoir sélectionné la langue, cliquez sur le Continue
bouton bleu , en bas à droite, pour passer à l'étape suivante de l'installation de Wordpress.
Sur la page suivante, entrez un titre pour votre site Web dans le Site Title
champ (1), le nom d'utilisateur d'un administrateur dans le Username
champ (2). Utilisez le mot de passe généré ou saisissez votre propre mot de passe dans le Password
champ (3). Entrez une adresse e-mail valide dans le Your Email
champ (4) et activez ou laissez désactivée l' Search Engine Visibility
option (5), selon que votre site est en phase de construction. Lorsque vous êtes satisfait, cliquez sur le Install Wordpress
bouton gris (6) pour terminer la configuration de Wordpress.
Vous arriverez dans la zone d'administration de Wordpress. L'installation initiale de Wordpress est maintenant terminée.
Configurer Caddy pour exécuter Wordpress en utilisant le serveur PHP-FPM (non SSL)
Créez un fichier de modèle de configuration de niveau racine de base nommé caddy.conf
dans le /etc/caddy/
répertoire qui utilise une importation pour le fichier de configuration vhost réel pour un exemple de site Web de test Wordpress nommé example.com.conf
dans le /etc/caddy/conf.d/
répertoire à l'aide de la echo
commande.
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'
Installez le unzip
programme afin d'extraire le fichier compressé tar Wordpress, ( latest.tar.gz
).
sudo apt install unzip
Téléchargez le latest.tar.gz
fichier dans le /tmp/
répertoire, modifiez les autorisations d'utilisateur et de groupe du /var/www/html
répertoire pour l'utilisateur www-data
et le groupe www-data
et extrayez le contenu du latest.tar.gz
fichier dans le /var/www/html/
répertoire.
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
Installez le serveur PHP-FPM pour traiter les fichiers PHP et les extensions PHP requises pour interagir avec Wordpress.
sudo apt install php-curl php-fpm php-imagick php-mbstring php-mcrypt php-mysql php-pspell php-xmlrpc -y
Installez le serveur de base de données MariaDB pour stocker les données pour Wordpress.
sudo apt install mariadb-server -y
Facultatif: désactivez cette optionskip-name-resolve
pour éviter la pénalité de recherche DNS pour les connexions client, désactivez l'écouteur TCP / IP de la base de données et utilisez uniquement des sockets Unix.
sudo sed -i '26iskip-name-resolve\nskip-networking' /etc/mysql/mariadb.conf.d/50-server.cnf
Redémarrez le serveur de base de données MariaDB avec les nouvelles modifications de configuration.
sudo systemctl restart mysql
Sécurisez le serveur de base de données MariaDB. Remplacez le ********
support ci-dessous dans la première commande par un nouveau mot de passe root.
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"
Créez une base de données wordpress_example_com
, pour Wordpress; un utilisateur de base de données spécifique, wordpress_example_com_admin
et les autorisations de base de données minimale nécessaire ( ALTER
, CREATE
, DELETE
, DROP
, INDEX
, INSERT
, SELECT
, et UPDATE
) pour le noyau Wordpress et plug - in de jour en jour des installations fonctionnant et le noyau / plugin mises à jour. Remplacez le example_com
dans wordpress_example_com
votre nom de domaine réel, example_com
en wordpress_example_com_admin
votre nom de domaine réel et ********
avec un nouveau mot de passe spécifique pour l' wordpress_example_com_admin
utilisateur.
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"
Créez le fichier de configuration Wordpress,, wp-config.php
dans le /var/www/html
répertoire. Remplacez le example_com
dans wordpress_example_com
votre nom de domaine réel, example_com
en wordpress_example_com_admin
votre nom de domaine réel et ********
avec un nouveau mot de passe spécifique pour l' wordpress_example_com_admin
utilisateur.
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
Démarrez le serveur Web Caddy.
sudo systemctl start caddy
Ouvrez votre navigateur Web sur le FQDN ( example.com
) de votre instance VPS. Après avoir sélectionné la langue, cliquez sur le Continue
bouton bleu , en bas à droite, pour passer à l'étape suivante de l'installation de Wordpress.
Sur la page suivante, entrez un titre pour votre site Web dans le Site Title
champ (1), le nom d'utilisateur d'un administrateur dans le Username
champ (2). Utilisez le mot de passe généré ou saisissez votre propre mot de passe dans le Password
champ (3). Entrez une adresse e-mail valide dans le Your Email
champ (4) et activez ou laissez désactivée l' Search Engine Visibility
option (5), selon que votre site est en phase de construction. Lorsque vous êtes satisfait, cliquez sur le Install Wordpress
bouton gris (6) pour terminer la configuration de Wordpress.
Vous arriverez dans la zone d'administration de Wordpress. L'installation initiale de Wordpress est maintenant terminée.