Zainstaluj Caddy Web Server ze źródła w celu uzyskania zgodności z licencją na Ubuntu 16.04 LTS

We wrześniu 2017 r. Umowa EULA Caddy została zmieniona, a wszystkie instancje Caddy prowadzone przez firmy i prywatne strony internetowe prowadzące handel wymagają licencji komercyjnej na pobrany plik binarny Caddy. Ten samouczek pomaga klientom, którzy chcą zainstalować serwer internetowy Caddy zgodnie z nową umową EULA. Podczas pisania, przy kompilowaniu Caddy ze źródła i tworzeniu własnego pliku binarnego, płatna licencja nie jest wymagana, niezależnie od tego, czy prowadzisz działalność gospodarczą, czy prowadzisz handel na osobistej stronie internetowej. Ważne jest, aby przejrzeć najnowszą umowę EULA pod kątem zgodności przed wykonaniem kroków opisanych w tym samouczku.

Funkcje:

  • Krótka, zrozumiała konfiguracja
  • Zbudowany z Go
  • Rozszerzalne rejestrowanie
  • Niezwykle szybka dostawa plików statycznych
  • Dynamiczna obsługa witryny i serwera proxy
  • Wewnętrzny moduł sprawdzający konfigurację
  • Statyczny binarny
  • Domyślnie korzysta z zalecanych nowoczesnych szyfrów Mozilli
  • Wykrywanie MITM (człowiek w środku)
  • Obsługa SNI (wskaźnik nazwy serwera)
  • Automatyczne generowanie / pobieranie / odnawianie certyfikatu Let's Encrypt
  • Wsparcie OCSP
  • Obsługa wirtualnych hostów
  • Obsługa renderowania Markdown2html
  • Wbudowana obsługa HTTP / 2, QUIC i Websocket
  • Równoważenie obciążenia, odwrotne proxy i obsługa terminacji SSL

Wymagania wstępne

Aktualizacja systemu

Zaloguj się jako zwykły użytkownik, który ma uprawnienia do korzystania z polecenia sudo. Zaktualizuj system w następujący sposób.

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

Zainstaluj Caddy ze źródła

Pobierz najnowszą wersję kodu źródłowego serwera WWW Caddy. Nie zawiera żadnych wtyczek innych firm do Caddy.

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

Opcjonalnie: jeśli potrzebujesz tls.dns.vultrwtyczki dnsproviders innej firmy, skopiuj następujące. Spowoduje to pobranie kodu źródłowego Caddy i tls.dns.vultrwtyczki dnsproviders innej firmy, jeśli chcesz go użyć.

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

Skompiluj caddyplik binarny. Kompilacja zajmie mniej niż minutę.

go run build.go

Sprawdź wersję i listę wtyczek pliku caddybinarnego.

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

Skopiuj plik binarny Caddy znajdujący się ~/go/src/github.com/mholt/caddy/caddy/w /usr/binkatalogu i zmienić z powrotem do katalogu głównym katalogu użytkownika.

sudo cp caddy /usr/bin/ && cd

Utwórz caddy.serviceplik systemd w /etc/systemd/system/katalogu za pomocą echopolecenia.

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"

Utwórz /etc/caddy/katalog, który będzie zawierał plik konfiguracyjny serwera WWW Caddy; /etc/ssl/caddy/katalogu, który będzie zawierał Szyfrowanie Certyfikaty Spójrzmy prawdzie; /usr/share/caddy/katalogu, który będzie zawierał przykładowy plik HTML; oraz /var/log/caddy/katalog, który będzie zawierał dzienniki serwera WWW Caddy, za pomocą mkdirpolecenia. Zmień własność grupy na www-datagrupę, używając chownpolecenia w katalogach /etc/ssl/caddy/i /var/log/caddy/. Usuń światowe pliki wykonywalne, czytelne i zapisywalne, używając chmodpolecenia do zabezpieczenia /etc/ssl/caddy/katalogu.

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/

Włącz serwer internetowy Caddy.

sudo systemctl daemon-reload && sudo systemctl enable caddy

Skonfiguruj Caddy Web Server

Każda sekcja poniżej wyjaśnia, jak skonfigurować Caddy dla różnych scenariuszy. Możesz z nich skorzystać w celach informacyjnych i przejść do sekcji spełniającej Twoje wymagania.

Skonfiguruj Caddy do wyświetlania statycznych stron HTML (bez SSL)

Utwórz podstawowy plik szablonu konfiguracji na poziomie administratora o nazwie caddy.confw /etc/caddy/katalogu, który używa importu dla rzeczywistego pliku konfiguracji vhost dla przykładowej statycznej witryny HTML o nazwie example.com.confw /etc/caddy/conf.d/katalogu za pomocą echopolecenia.

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'

Utwórz /var/www/htmlkatalog i utwórz proste index.htmlwnętrze za pomocą echopolecenia.

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'

Uruchom serwer internetowy Caddy.

sudo systemctl start caddy

Otwórz przeglądarkę internetową na FQDN ( example.com) instancji VPS.

Skonfiguruj Caddy do wyświetlania statycznych stron HTML (SSL)

Utwórz podstawowy plik szablonu konfiguracji na poziomie administratora o nazwie caddy.confw /etc/caddy/katalogu, który używa importu dla rzeczywistego pliku konfiguracji vhost dla przykładowej statycznej witryny HTML o nazwie example.com.confw /etc/caddy/conf.d/katalogu za pomocą echopolecenia.

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'

Utwórz /var/www/htmlkatalog i utwórz proste index.htmlwnętrze za pomocą echopolecenia.

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'

Uruchom serwer internetowy Caddy.

sudo systemctl start caddy

Otwórz przeglądarkę internetową na FQDN ( example.com) instancji VPS.

Skonfiguruj Caddy do przetwarzania stron PHP przez proxy serwera PHP-FPM (bez SSL)

Utwórz podstawowy plik szablonu konfiguracji na poziomie administratora o nazwie caddy.confw /etc/caddy/katalogu, który używa importu dla rzeczywistego pliku konfiguracji vhost dla przykładowej strony PHPInfo o nazwie example.com.confw /etc/caddy/conf.d/katalogu za pomocą echopolecenia.

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'

Utwórz prosty index.phpw /var/www/htmlkatalogu za pomocą echopolecenia.

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

Zainstaluj serwer PHP-FPM, aby przetwarzać pliki PHP.

sudo apt install php-fpm -y

Uruchom serwer internetowy Caddy.

sudo systemctl start caddy

Otwórz przeglądarkę internetową na FQDN ( example.com) instancji VPS.

Skonfiguruj Caddy do przetwarzania stron PHP przez proxy serwera PHP-FPM (SSL)

Utwórz podstawowy plik szablonu konfiguracji na poziomie administratora o nazwie caddy.confw /etc/caddy/katalogu, który używa importu dla rzeczywistego pliku konfiguracji vhost dla przykładowej dynamicznej testowej strony internetowej o nazwie example.com.confw /etc/caddy/conf.d/katalogu za pomocą echopolecenia.

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'

Utwórz prosty index.phpw /var/www/htmlkatalogu za pomocą echopolecenia.

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

Zainstaluj serwer PHP-FPM, aby przetwarzać pliki PHP.

sudo apt install php-fpm -y

Uruchom serwer internetowy Caddy.

sudo systemctl start caddy

Otwórz przeglądarkę internetową na FQDN ( example.com) instancji VPS.

Skonfiguruj Caddy do uruchamiania Wordpressa przez proxy serwera PHP-FPM (bez SSL)

Utwórz podstawowy plik szablonu konfiguracji na poziomie administratora o nazwie caddy.confw /etc/caddy/katalogu, który używa importu dla rzeczywistego pliku konfiguracji vhost dla przykładowej testowej strony internetowej Wordpress nazwanej example.com.confw /etc/caddy/conf.d/katalogu za pomocą echopolecenia.

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'

Zainstaluj unzipprogram, aby wyodrębnić plik tar-gzipped Wordpress ( latest.tar.gz).

sudo apt install unzip

Pobierz latest.tar.gzplik do /tmp/katalogu, zmień uprawnienia użytkownika i grupy do /var/www/htmlkatalogu na użytkownika www-datai grupę www-datai wyodrębnij zawartość latest.tar.gzpliku do /var/www/html/katalogu.

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

Zainstaluj serwer PHP-FPM, aby przetwarzać pliki PHP i wymagane rozszerzenia PHP wymagane do interakcji z Wordpress.

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

Zainstaluj serwer bazy danych MariaDB, aby przechowywać dane w Wordpress.

sudo apt install mariadb-server -y

Opcjonalne: Wyłącz, skip-name-resolveaby uniknąć kary za wyszukiwanie DNS dla połączeń klienckich, wyłącz TCP/IPnasłuchiwanie bazy danych i używaj tylko gniazd unix.

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

Uruchom ponownie serwer bazy danych MariaDB, aby wprowadzić nowe zmiany w konfiguracji.

sudo systemctl restart mysql

Zabezpiecz serwer bazy danych MariaDB. Zamień ********uchwyt poniżej w pierwszym poleceniu na nowe hasło roota.

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"

Utwórz bazę danych wordpress_example_comdla Wordpress; użytkownik specjalną bazę danych, wordpress_example_com_admina minimalne uprawnienia niezbędne bazy danych, ( ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, i UPDATE) dla rdzenia i dzień Wordpress Plugin instalacjach na dzień funkcjonowania i rdzenia / plugin aktualizacji. Zamień example_comin wordpress_example_comna rzeczywistą nazwę domeny, example_comin wordpress_example_com_adminna rzeczywistą nazwę domeny i ********nowe hasło specjalnie dla wordpress_example_com_adminużytkownika.

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"

Utwórz plik konfiguracyjny Wordpress wp-config.php, w /var/www/htmlkatalogu. Zamień example_comin wordpress_example_comna rzeczywistą nazwę domeny, example_comin wordpress_example_com_adminna rzeczywistą nazwę domeny i ********nowe hasło specjalnie dla wordpress_example_com_adminużytkownika.

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

Uruchom serwer internetowy Caddy.

sudo systemctl start caddy

Otwórz przeglądarkę internetową na FQDN ( example.com) instancji VPS. Zobaczysz stronę wyboru języka. Po wybraniu języka kliknij niebieski Continueprzycisk w prawym dolnym rogu, aby przejść do następnego kroku instalacji Wordpress.

Na następnej stronie wpisz tytuł swojej witryny w Site Titlepolu (1), nazwę użytkownika administratora w Usernamepolu (2). Użyj wygenerowanego hasła lub wprowadź własne hasło w Passwordpolu (3). Wpisz prawidłowy adres e-mail w Your Emailpolu (4) i włącz lub pozostaw Search Engine Visibilityopcję wyłączoną (5), w zależności od tego, czy witryna znajduje się w fazie budowy. Kiedy jesteś zadowolony, kliknij szary Install Wordpressprzycisk (6), aby zakończyć konfigurację Wordpress.

Dotrzesz do obszaru administracyjnego Wordpress. Pierwsza instalacja Wordpress jest teraz zakończona.

Skonfiguruj Caddy do uruchamiania Wordpressa przez proxy serwera PHP-FPM (bez SSL)

Utwórz podstawowy plik szablonu konfiguracji na poziomie administratora o nazwie caddy.confw /etc/caddy/katalogu, który używa importu dla rzeczywistego pliku konfiguracji vhost dla przykładowej testowej strony internetowej Wordpress nazwanej example.com.confw /etc/caddy/conf.d/katalogu za pomocą echopolecenia.

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'

Zainstaluj unzipprogram, aby wyodrębnić plik tar-gzipped Wordpress, ( latest.tar.gz).

sudo apt install unzip

Pobierz latest.tar.gzplik do /tmp/katalogu, zmień uprawnienia użytkownika i grupy do /var/www/htmlkatalogu na użytkownika www-datai grupę www-datai wyodrębnij zawartość latest.tar.gzpliku do /var/www/html/katalogu.

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

Zainstaluj serwer PHP-FPM, aby przetwarzać pliki PHP i wymagane rozszerzenia PHP wymagane do interakcji z Wordpress.

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

Zainstaluj serwer bazy danych MariaDB, aby przechowywać dane w Wordpress.

sudo apt install mariadb-server -y

Opcjonalne: Wyłącz, skip-name-resolveaby uniknąć kary za wyszukiwanie DNS dla połączeń klienckich, wyłącz nasłuchiwanie bazy danych TCP / IP i używaj tylko gniazd unix.

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

Uruchom ponownie serwer bazy danych MariaDB, aby wprowadzić nowe zmiany w konfiguracji.

sudo systemctl restart mysql

Zabezpiecz serwer bazy danych MariaDB. Zamień ********uchwyt poniżej w pierwszym poleceniu na nowe hasło roota.

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"

Utwórz bazę danych wordpress_example_comdla Wordpress; użytkownik specjalną bazę danych, wordpress_example_com_admina uprawnienia minimalne niezbędne bazy danych ( ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, i UPDATE) dla rdzenia i Wordpress plugin dzień instalacjach na dzień funkcjonowania i rdzenia / plugin aktualizacji. Zamień example_comin wordpress_example_comna rzeczywistą nazwę domeny, example_comin wordpress_example_com_adminna rzeczywistą nazwę domeny i ********nowe hasło specjalnie dla wordpress_example_com_adminużytkownika.

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"

Utwórz plik konfiguracyjny Wordpress wp-config.php, w /var/www/htmlkatalogu. Zamień example_comin wordpress_example_comna rzeczywistą nazwę domeny, example_comin wordpress_example_com_adminna rzeczywistą nazwę domeny i ********nowe hasło specjalnie dla wordpress_example_com_adminużytkownika.

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

Uruchom serwer internetowy Caddy.

sudo systemctl start caddy

Otwórz przeglądarkę internetową na FQDN ( example.com) instancji VPS. Po wybraniu języka kliknij niebieski Continueprzycisk w prawym dolnym rogu, aby przejść do następnego kroku instalacji Wordpress.

Na następnej stronie wpisz tytuł swojej witryny w Site Titlepolu (1), nazwę użytkownika administratora w Usernamepolu (2). Użyj wygenerowanego hasła lub wprowadź własne hasło w Passwordpolu (3). Wpisz prawidłowy adres e-mail w Your Emailpolu (4) i włącz lub pozostaw Search Engine Visibilityopcję wyłączoną (5), w zależności od tego, czy witryna znajduje się w fazie budowy. Kiedy jesteś zadowolony, kliknij szary Install Wordpressprzycisk (6), aby zakończyć konfigurację Wordpress.

Dotrzesz do obszaru administracyjnego Wordpress. Pierwsza instalacja Wordpress jest teraz zakończona.



Leave a Comment

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.