Instalați serverul Caddy Web din sursă pentru conformitate cu licența pe Ubuntu 16.04 LTS

În septembrie 2017, EULA Caddy a fost modificată și toate instanțele Caddy administrate de companii și site-uri web personale care efectuează comerț necesită licență comercială pentru binarul descărcat de Caddy. Acest tutorial ajută clienții care doresc să instaleze serverul web Caddy în conformitate cu noul EULA. În momentul scrierii, atunci când compilați Caddy de la sursă și creați propriul dvs. binar, nu este necesară o licență plătită dacă sunteți o afacere sau desfășurați comerț pe site-ul dvs. personal. Este important să revizuiți cele mai recente EULA pentru respectare, înainte de a urma pașii din acest tutorial.

Caracteristici:

  • Configurație scurtă, ușor de înțeles
  • Construit cu Go
  • Jurnal extins
  • Livrare de fișiere statice extrem de rapidă
  • Site dinamic și suport proxy
  • Verificator de configurare internă
  • Binar static
  • Utilizează în mod implicit cifrele moderne recomandate de Mozilla
  • Detectarea MITM (omul din mijloc)
  • Asistență SNI (indicator de nume de server)
  • Criptează automat generarea / regăsirea / reînnoirea certificatelor
  • Suport OCSP
  • Suport pentru gazdele virtuale
  • Asistență de redare Markdown2html
  • Suport HTTP / 2, QUIC și Websocket încorporat
  • Echilibrarea încărcării, proxy invers și suport de terminare SSL

Cerințe preliminare

Actualizare de sistem

Conectați-vă ca un utilizator obișnuit care are permisiunea de a utiliza comanda sudo. Actualizați sistemul după cum urmează.

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

Instalați Caddy From Source

Descărcați cea mai recentă versiune a codului sursă al serverului web Caddy. Acesta nu conține plugin-uri de la terți pentru Caddy.

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

Opțional: Dacă aveți nevoie de tls.dns.vultrpluginul terț-părți dnsproviders, copiați următoarele. Acest lucru va descărca atât codul sursă Caddy, cât și tls.dns.vultrpluginul dnsproviders de la terți dacă doriți să îl utilizați.

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

Compilați caddybinarul. Acest lucru va dura mai puțin de un minut pentru a compila.

go run build.go

Verificați versiunea și lista de pluginuri ale caddybinarului.

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

Copiați binar Caddy situat în ~/go/src/github.com/mholt/caddy/caddy/la /usr/bindirectorul și de a schimba directorul înapoi la rădăcină de directorul dvs. de utilizator.

sudo cp caddy /usr/bin/ && cd

Creați caddy.servicefișierul systemd în /etc/systemd/system/director folosind echocomanda.

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"

Creați /etc/caddy/directorul, care va conține fișierul de configurare a serverului web Caddy; /etc/ssl/caddy/directorul, care va conține certificate criptați Să-; /usr/share/caddy/directorul, care va conține fișierul eșantion html; și /var/log/caddy/directorul, care va conține jurnalele serverului web Caddy, folosind mkdircomanda. Schimbați proprietatea grupului în www-datagrup utilizând chowncomanda la directoare /etc/ssl/caddy/și /var/log/caddy/. Eliminați permisiunile executabile, lizibile și care pot fi scrise, folosind chmodcomanda pentru a securiza /etc/ssl/caddy/directorul.

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/

Activați serverul web Caddy.

sudo systemctl daemon-reload && sudo systemctl enable caddy

Configurați serverul web Caddy

Fiecare secțiune de mai jos explică modul de configurare Caddy pentru diferite scenarii. Puteți utiliza acestea pentru referință și să treceți la secțiunea care corespunde cerințelor dvs.

Configurare Caddy pentru afișarea paginilor HTML statice (non-SSL)

Creați un fișier de configurare de bază, la nivel de rădăcină numit caddy.confîn /etc/caddy/director, care utilizează un import pentru fișierul de configurare real vhost pentru un eșantion de sit web HTML static numit example.com.confîn /etc/caddy/conf.d/director folosind echocomanda.

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'

Creați /var/www/htmldirectorul și creați un simplu index.htmlinterior folosind echocomanda.

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'

Porniți serverul web Caddy.

sudo systemctl start caddy

Deschideți browserul web la FQDN ( example.com) al instanței VPS.

Configurare Caddy pentru afișarea paginilor HTML statice (SSL)

Creați un fișier de configurare de bază, la nivel de rădăcină numit caddy.confîn /etc/caddy/directorul care folosește o importare pentru fișierul de configurare real vhost pentru un exemplu de site Web HTML static numit example.com.confîn /etc/caddy/conf.d/director folosind echocomanda.

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'

Creați /var/www/htmldirectorul și creați un simplu index.htmlinterior folosind echocomanda.

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'

Porniți serverul web Caddy.

sudo systemctl start caddy

Deschideți browserul web la FQDN ( example.com) al instanței VPS.

Configurarea Caddy pentru procesarea paginilor PHP Proxying Server PHP-FPM (non SSL)

Creați un fișier de configurare de bază, la nivel de rădăcină numit caddy.confîn /etc/caddy/directorul care folosește un import pentru fișierul de configurare real vhost pentru o pagină PHPInfo de exemplu numită example.com.confîn /etc/caddy/conf.d/director folosind echocomanda.

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'

Creați un simplu index.phpîn /var/www/htmldirector folosind echocomanda.

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

Instalați serverul PHP-FPM pentru a procesa fișierele PHP.

sudo apt install php-fpm -y

Porniți serverul web Caddy.

sudo systemctl start caddy

Deschideți browserul web la FQDN ( example.com) al instanței VPS.

Instalare Caddy pentru procesarea paginilor PHP Proxying Server PHP-FPM (SSL)

Creați un fișier de configurare de bază, la nivel de rădăcină numit caddy.confîn /etc/caddy/directorul care folosește o importare pentru fișierul de configurare real vhost pentru un site web de test dinamic de probă numit example.com.confîn /etc/caddy/conf.d/director folosind echocomanda.

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'

Creați un simplu index.phpîn /var/www/htmldirector folosind echocomanda.

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

Instalați serverul PHP-FPM pentru a procesa fișierele PHP.

sudo apt install php-fpm -y

Porniți serverul web Caddy.

sudo systemctl start caddy

Deschideți browserul web la FQDN ( example.com) al instanței VPS.

Configurare Caddy pentru a rula Wordpress Proxying Server PHP-FPM (non-SSL)

Creați un fișier de configurare de bază, la nivel de rădăcină numit caddy.confîn /etc/caddy/directorul care utilizează un import pentru fișierul de configurare real vhost pentru un exemplu de site Web de test Wordpress numit example.com.confîn /etc/caddy/conf.d/director folosind echocomanda.

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'

Instalați unzipprogramul pentru a extrage fișierul tar-gzipped Wordpress latest.tar.gz.

sudo apt install unzip

Descărcați latest.tar.gzfișierul în /tmp/director, schimbați permisiunile de utilizator și de grup ale /var/www/htmldirectorului la utilizator www-datași grup www-datași extrageți conținutul latest.tar.gzfișierului în /var/www/html/director.

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

Instalați serverul PHP-FPM pentru a procesa fișierele PHP și extensiile PHP necesare pentru a interacționa cu Wordpress.

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

Instalați serverul de baze de date MariaDB pentru a stoca date pentru Wordpress.

sudo apt install mariadb-server -y

Opțional: Dezactivat skip-name-resolvepentru a evita penalizarea de căutare DNS pentru conexiunile clientului, opriți TCP/IPascultătorul bazei de date și utilizați numai socluri unix.

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

Reporniți serverul de bază MariaDB la noile modificări de configurare.

sudo systemctl restart mysql

Securizați serverul de baze de date MariaDB. Înlocuiți ********suportul de mai jos în prima comandă cu o nouă parolă rădăcină.

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"

Creați o bază de date wordpress_example_com, pentru Wordpress; un utilizator de baze de date specifice, wordpress_example_com_adminprecum și permisiunile minime necesare de baze de date, ( ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, & UPDATE), pentru Wordpress de bază și zi instalații plugin pentru o zi de funcționare și de bază / plugin actualizări. Înlocuiți example_comîn wordpress_example_comcu numele domeniului dvs., example_comîn wordpress_example_com_adminnumele domeniului dvs. și ********cu o nouă parolă special pentru wordpress_example_com_adminutilizator.

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"

Creați fișierul de configurare Wordpress wp-config.php, în /var/www/htmldirector. Înlocuiți example_comîn wordpress_example_comcu numele domeniului dvs., example_comîn wordpress_example_com_adminnumele domeniului dvs. și ********cu o nouă parolă special pentru wordpress_example_com_adminutilizator.

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

Porniți serverul web Caddy.

sudo systemctl start caddy

Deschideți browserul web la FQDN ( example.com) al instanței VPS. Veți vedea o pagină de selectare a limbii. După selectarea limbii, faceți clic pe Continuebutonul albastru , din partea dreaptă jos, pentru a trece la următorul pas al instalării Wordpress.

În pagina următoare, introduceți un Site Titlecâmp pentru site-ul dvs. web în câmpul (1), numele de utilizator al administratorului în Usernamecâmpul (2). Utilizați parola generată sau introduceți propria parolă în Passwordcâmp (3). Introduceți o adresă de e-mail validă în Your Emailcâmpul (4) și activați sau lăsați dezactivat Search Engine Visibilityopțiunea (5), în funcție de dacă site-ul dvs. este în faza de construire. Când sunteți mulțumit, faceți clic pe Install Wordpressbutonul gri (6) pentru a finaliza configurarea Wordpress.

Veți ajunge în zona de administrare Wordpress. Instalarea inițială a Wordpress este acum completă.

Configurare Caddy pentru a rula Wordpress Proxying Server PHP-FPM (non-SSL)

Creați un fișier de configurare de bază, la nivel de rădăcină numit caddy.confîn /etc/caddy/directorul care utilizează un import pentru fișierul de configurare real vhost pentru un exemplu de site Web de test Wordpress numit example.com.confîn /etc/caddy/conf.d/director folosind echocomanda.

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'

Instalați unzipprogramul pentru a extrage fișierul tar-gzipped Wordpress, ( latest.tar.gz).

sudo apt install unzip

Descărcați latest.tar.gzfișierul în /tmp/director, schimbați permisiunile de utilizator și de grup ale /var/www/htmldirectorului la utilizator www-datași grup www-datași extrageți conținutul latest.tar.gzfișierului în /var/www/html/director.

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

Instalați serverul PHP-FPM pentru a procesa fișierele PHP și extensiile PHP necesare pentru a interacționa cu Wordpress.

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

Instalați serverul de baze de date MariaDB pentru a stoca date pentru Wordpress.

sudo apt install mariadb-server -y

Opțional: Dezactivat skip-name-resolvepentru a evita penalizarea de căutare DNS pentru conexiunile clientului, opriți baza de date TCP / IP ascultător și utilizați numai socluri unix.

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

Reporniți serverul de bază MariaDB la noile modificări de configurare.

sudo systemctl restart mysql

Securizați serverul de baze de date MariaDB. Înlocuiți ********suportul de mai jos în prima comandă cu o nouă parolă rădăcină.

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"

Creați o bază de date wordpress_example_com, pentru Wordpress; un utilizator de baze de date specifice, wordpress_example_com_adminprecum și permisiunile de baze de date minime necesare ( ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, & UPDATE) pentru Wordpress de bază și plugin zi instalații pentru o zi de funcționare și de bază / plugin actualizări. Înlocuiți example_comîn wordpress_example_comcu numele domeniului dvs., example_comîn wordpress_example_com_adminnumele domeniului dvs. și ********cu o nouă parolă special pentru wordpress_example_com_adminutilizator.

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"

Creați fișierul de configurare Wordpress wp-config.php, în /var/www/htmldirector. Înlocuiți example_comîn wordpress_example_comcu numele domeniului dvs., example_comîn wordpress_example_com_adminnumele domeniului dvs. și ********cu o nouă parolă special pentru wordpress_example_com_adminutilizator.

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

Porniți serverul web Caddy.

sudo systemctl start caddy

Deschideți browserul web la FQDN ( example.com) al instanței VPS. După selectarea limbii, faceți clic pe Continuebutonul albastru , din partea dreaptă jos, pentru a trece la următorul pas al instalării Wordpress.

În pagina următoare, introduceți un Site Titlecâmp pentru site-ul dvs. web în câmpul (1), numele de utilizator al administratorului în Usernamecâmpul (2). Utilizați parola generată sau introduceți propria parolă în Passwordcâmp (3). Introduceți o adresă de e-mail validă în Your Emailcâmpul (4) și activați sau lăsați dezactivat Search Engine Visibilityopțiunea (5), în funcție de dacă site-ul dvs. este în faza de construire. Când sunteți mulțumit, faceți clic pe Install Wordpressbutonul gri (6) pentru a finaliza configurarea Wordpress.

Veți ajunge în zona de administrare Wordpress. Instalarea inițială a Wordpress este acum completă.



Leave a Comment

Cum se instalează Anchor CMS pe un VPS Fedora 26 LAMP

Cum se instalează Anchor CMS pe un VPS Fedora 26 LAMP

Folosind un sistem diferit? Anchor CMS este un motor de blog de sistem de gestionare a conținutului (CMS) super-simplu și extrem de ușor, gratuit și deschis

Configurare partajare NFS pe Debian

Configurare partajare NFS pe Debian

NFS este un sistem de fișiere bazat pe rețea care permite computerelor să acceseze fișiere într-o rețea de calculatoare. Acest ghid explică modul în care puteți expune folderele peste NF

Configurați un server TeamTalk pe Linux

Configurați un server TeamTalk pe Linux

TeamTalk este un sistem de conferințe care permite utilizatorilor să aibă conversații audio / video de înaltă calitate, chat de text, transfer de fișiere și partajare ecrane. Este

Folosind cheia SSH pentru a vă conecta la utilizatori non-root

Folosind cheia SSH pentru a vă conecta la utilizatori non-root

Vultr oferă o caracteristică care vă permite să preinstalați cheile SSH la crearea unei noi instanțe. Acest lucru vă permite să accesați utilizatorul root al serverelor, totuși

Cum se instalează Ranger Terminal File Manager pe Linux

Cum se instalează Ranger Terminal File Manager pe Linux

Ranger este un manager de fișiere bazat pe linia de comandă cu legături de cheie VI. Oferă o interfață de blestem minimalistă și frumoasă, cu o vedere asupra ierarhiei de directoare

Cum se instalează Redmine pe Ubuntu 16.04

Cum se instalează Redmine pe Ubuntu 16.04

Folosind un sistem diferit? Redmine este un instrument gratuit și deschis de gestionare a proiectelor bazat pe web. Este scris în Ruby on Rails și acceptă mai multe baze de date

Instalare RethinkDB Cluster pe CentOS 7

Instalare RethinkDB Cluster pe CentOS 7

Introducere RethinkDB este o bază de date NoSQL care stochează date sub formă de documente JSON. Are un limbaj de interogare super intuitiv și are funcții disponibile în mod obișnuit

Cum se construiește Brotli din sursă pe Ubuntu 18.04 LTS

Cum se construiește Brotli din sursă pe Ubuntu 18.04 LTS

Folosind un sistem diferit? Brotli este o nouă metodă de compresie cu un raport de compresie mai bun decât GZIP. Codul sursă este găzduit public pe acest Githu

Configurarea conturilor de utilizator numai SFTP pe CentOS 7

Configurarea conturilor de utilizator numai SFTP pe CentOS 7

În anumite ocazii, este posibil ca un administrator de sistem să aibă nevoie să creeze un cont de utilizator și să restricționeze accesul acestora la gestionarea propriilor fișiere prin sFTP, dar nu b

Utilizarea vizualizărilor MySQL pe Debian 7

Utilizarea vizualizărilor MySQL pe Debian 7

Introducere MySQL are o caracteristică excelentă cunoscută sub numele de vizualizări. Vizualizările sunt interogări stocate. Gândiți-vă la ele ca la un alias pentru o întrebare altfel lungă. În acest ghid,

Cum se instalează Nginx 1.14 pe Arch Linux

Cum se instalează Nginx 1.14 pe Arch Linux

Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol.) Acces Sudo. Comenzile care trebuie rulate ca root sunt prefixate de #. Th

Dezactivați sau restricționați conectarea rădăcină prin SSH pe Linux

Dezactivați sau restricționați conectarea rădăcină prin SSH pe Linux

Permiterea autentificării root pe SSH este de obicei considerată o practică slabă de securitate în întreaga industrie tehnologică. În schimb, puteți efectua administrativ sensibil

Cum se instalează Seafile Server pe Ubuntu 16.10

Cum se instalează Seafile Server pe Ubuntu 16.10

Folosind un sistem diferit? Seafile (versiunea comunității) este o soluție gratuită și deschisă de sincronizare și partajare a fișierelor, care este similară cu ownCloud. De-a lungul spiritului

Cum să compilați Nginx din sursă pe CentOS 7

Cum să compilați Nginx din sursă pe CentOS 7

Folosind un sistem diferit? NGINX poate fi utilizat ca server HTTP / HTTPS, server proxy invers, server proxy de poștă, echilibrator de sarcină, terminator TLS sau cachin

Cum se instalează Thelia 2.3 pe Debian 9

Cum se instalează Thelia 2.3 pe Debian 9

Folosind un sistem diferit? Thelia este un instrument open source pentru crearea de site-uri web pentru e-business și gestionarea conținutului online scris în PHP. Codul sursă Thelia i

Cum se instalează DokuWiki pe Ubuntu 16.04 LTS

Cum se instalează DokuWiki pe Ubuntu 16.04 LTS

Folosind un sistem diferit? DokuWiki este un program wiki open source scris în PHP care nu necesită o bază de date. Stochează date în fișiere text. DokuWik

Configurarea unui chroot pe Debian

Configurarea unui chroot pe Debian

Acest articol vă va învăța cum să configurați o închisoare chroot pe Debian. Presupun că utilizați Debian 7.x. Dacă executați Debian 6 sau 8, acest lucru poate funcționa, bine

Cum se instalează PiVPN pe Debian

Cum se instalează PiVPN pe Debian

Introducere Un mod ușor de a configura un server VPN pe Debian este cu PiVPN. PiVPN este un instalator și un pachet pentru OpenVPN. Creează comenzi simple pentru tine

Cum se instalează Chamilo 1.11.8 pe CentOS 7

Cum se instalează Chamilo 1.11.8 pe CentOS 7

Folosind un sistem diferit? Chamilo este un sistem gratuit și deschis de management al învățării (LMS), care este utilizat pe scară largă pentru educația online și colaborarea în echipă

Instalați Nginx, Wordpress și permiteți criptarea în minute cu EasyEngine pe Debian 8 sau Ubuntu 16.04

Instalați Nginx, Wordpress și permiteți criptarea în minute cu EasyEngine pe Debian 8 sau Ubuntu 16.04

EasyEngine (ee) este un instrument Python care vă permite să gestionați ușor și automat site-urile Wordpress de pe Nginx. Folosind EasyEngine, nu va trebui să dați

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe