Skip to main content

Kaip įdiegti "WordPress" Ubuntu serveryje 18.04

Anonim

WordPress yra, be abejonės, plačiausiai naudojama dienoraščių platforma planetoje. Tačiau įrankis gali būti naudojamas daug daugiau nei tiesiog dienoraščių. Tinkamai pridedant plėtinius, galite paversti WordPress į elektroninės prekybos svetainę, daugialypės terpės svetainę ir dar daugiau. Jei atsitiks, kad turėsite savo serverį, galėsite įdiegti "WordPress", nereikės kreiptis į trečią asmenį. Būtent tai mes ir ketiname padaryti. Šiame vadove sužinosite, kaip įdiegti būtinus komponentus ir WordPress platformą Ubuntu Serverio 18.04. Tai bus tik vienas dalykas: kad turite "Ubuntu" serverį ir veikia.

Priklausomybės

Pirmas dalykas, kurį reikia padaryti, yra gauti mūsų LAMP (Linux Apache MySQL PHP) serverį ir paleisti. Kadangi Ubuntu jau yra, viskas, ką reikia padaryti, yra įdiegti antrinius komponentus. Kadangi mes naudojame "Ubuntu", tai gali būti padaryta naudojant vieną komandą. Tačiau prieš tai mes norime įsitikinti, kad mūsų serveris yra atnaujintas. Atidarykite terminalo langą ir išduokite šias komandas:

"sudo apt-get update""sudo apt-get" atnaujinimas

Jei branduolys bus atnaujintas procese, reikės perkrauti. Jei taip yra, serverį reikės iš naujo paleisti (taigi pakeitimai įsigalios). Tai reiškia, kad turite paleisti atnaujinimą / naujinimą tuo metu, kai perkrauta yra gyvybinga.

Atnaujinus / atnaujinus, laikas įdiegti žiniatinklio / duomenų bazių serverius ir PHP. Tai galima padaryti naudojant vieną komandą:

sudo apt-get install lamp-server ^

Diegimo metu jums bus paprašyta sukurti / patvirtinti slaptažodį, skirtą "MySQL" administratoriaus naudotojui. Kai baigsite procesą, naršyklę galite nukreipti į http: // SERVER_IP (kur SERVER_IP yra jūsų Ubuntu serverio IP adresas), kad pamatytumėte "Apache" priėmimo ekraną.

Kitas turime įdiegti kelis būtinus PHP plėtinius. Tai galima padaryti komandą:

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

SSL įjungimas

Prieš patekdami į "Apache" konfigūraciją ir "WordPress" įdiegimą, ruošiame serverį naudoti SSL (Secure Sockets Layer), kuris yra įvairūs žiniatinklio protokolai, kurie dirba kartu, norėdami įklijuoti įprastą HTTP srautą saugomame, užkoduotame aplanke . Taigi HTTP tampa HTTPS. Kadangi aš tik nustatiniu testavimo serverį, aš sukursiu savarankiškai pasirašytą SSL sertifikatą IP adresui. Norėdami tai padaryti, atlikite šiuos veiksmus.

Sukurkite SSL sertifikatą naudodami šią komandą:

sudo openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt

Kai paleisite šią komandą, jums reikės atsakyti į šiuos klausimus:

Šalies pavadinimas (2 raidės kodas) AU:Valstybės ar provincijos pavadinimas (vardas, pavardė) Kai kuri valstybė:Vietos pavadinimas (pvz., Miestas) :Organizacijos pavadinimas (pvz., Įmonė) Organizacinio vieneto pavadinimas (pvz., Skyrius) :Paprastas vardas (pvz., Serverio visuotinis vardo numeris arba jūsų vardas) :Elektroninio pašto adresas :

Svarbu, kad savarankiškai pasirašytas sertifikatas, kad įvedate savo serverio IP adresą bendro vardo įrašui.

Toliau mes sukonfigūruosime "Apache" naudoti SSL. Sukurkite naują failą su komanda:

Sudo nano /etc/apache2/conf-available/ssl-params.conf

Į tą naują failą įklijuokite toliau nurodytus elementus:

SSLCipherSuite EECDH + AESGCM: EDH + AESGCM: AES256 + EECDH: AES256 + EDHSSLProtocol visi -SSLv2 -SSLv3 -TLSv1 -TLSv1.1SSLHonorCipherOrder On# Išjunkite HSTS išankstinę įkėlimo funkciją dabar. Galite naudoti komentuojamą antraštės eilutę, kuri apima# "išankstinio įkėlimo" direktyvą, jei suprantate jo pasekmes.# Antraštėje visada nustatytas griežtas transportas-saugumas "max-age = 63072000; includeSubDomains; preload"Antraštėje visada nustatomas X-Frame-Options DENYAntraštė visada nustato X-Content-Type-Options nosniff# Reikalingas Apache> = 2.4SSL kompresija išjungtaSSLUseStapling onSSLStaplingCache "shmcb: žurnalai / susegimo talpyklos (150000)"# Reikalingas Apache> = 2.4.11SSLSessionTickets OffIšsaugokite ir uždarykite tą failą.

Dabar mes ketiname sukurti naują failą default-ssl.conf. Prieš tai atlikdami atsarginę kopiją, atlikite komandą:

sudo cp /etc/apache2/sites-available/default-ssl.conf/etc/apache2/sites-available/default-ssl.conf.bak

Sukurkite naują failą su komanda:

Sudo nano /etc/apache2/sites-available/default-ssl.conf

Į tą naują failą įklijuokite toliau nurodytus elementus:

ServerAdmin YOUR_EMAILServerio vardas SERVER_IPDocumentRoot / var / www / htmlErrorLog $ {APACHE_LOG_DIR} /error.logCustomLog $ {APACHE_LOG_DIR} /access.log kartuSSLEngine onSSLCertificateFile /etc/ssl/certs/apache-selfsigned.crtSSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.keySSLOptions + StdEnvVarsSSLOptions + StdEnvVarsKai SERVER_IP yra jūsų serverio IP adresas, o jūsų "YOUR_EMAIL" yra jūsų el. Pašto adresas.

Išsaugokite ir uždarykite tą failą.

Dabar mes sukursime peradresavimą, kad visas HTTP srautas būtų automatiškai nukreiptas į HTTPS. Norėdami tai padaryti, sukurkite naują failą su komanda:

Sudo nano /etc/apache2/sites-available/000-default.conf

Į tą failą pridedama tokia eilutė pagal "DocumentRoot" įrašą:

Peradresuoti "/" "https: // SERVER_IP /"

Kai SERVER_IP yra jūsų serverio IP adresas.

Išsaugokite ir uždarykite tą failą.

Kitas turime įgalinti kelis modulius ir kompiuterius su komandomis:

sudo a2enmod sslSudo a2enmod antraštėssudo a2ensite default-sslsudo a2enconf ssl-params

Galiausiai iš naujo paleiskite Apache komandą:

sudo systemctl restart apache2

Dabar turėtumėte galimybę nukreipti naršyklę į https: // SERVER_IP (kur SERVER_IP yra jūsų serverio IP adresas) ir vis tiek pamatyti Apache prisijungimo ekraną.

Duomenų bazė

WordPress priklauso nuo duomenų bazės veikimo. Norėdami tai padaryti, pirmiausia turite prisijungti prie "MySQL" eilutės su komanda:

mysql -u root-p

Jums bus paraginti įvesti MySQL administratoriaus slaptažodį, kurį sukūrėte LAMP serverio diegimo metu. Lauke "MySQL" sukurkite duomenų bazę su komanda:

CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Tada sukurkite naują naudotoją ir suteikiame tą vartotojo leidimą pasiekti duomenų bazę naudodami komandą:

GRANT VISŲ Į WordPress. * Į "wordpressuser" @ "localhost", identifikuojamą pagal "PASSWORD";

Kur PASSWORD yra unikalus, tvirtas slaptažodis.

Supilkite duomenų bazės privilegijas ir palikite komandas:

FLUSH PRIVILEGES;EXIT

Leisti .htaccess ir Įgalinti perrašymo modulį

Mes turime įgalinti .htaccess "WordPress". Norėdami tai padaryti, sukurkite naują konfigūracijos failą Apache su komanda:

Sudo nano /etc/apache2/sites-available/wordpress.conf

Į tą failą įklijuokite:

AllowOverride All

Įgalinkite perrašymo modulį su komanda:

sudo a2enmod perrašyti

Paleiskite Apache su komanda:

sudo systemctl restart apache2

Atsisiųskite, išpakuokite ir parengkite WordPress

Mes ketiname atsisiųsti oficialų "WordPress" failą šiomis komandomis:

cd / tmpcurl-O https://wordpress.org/latest.tar.gz

Išpakuokite WordPress komandą:

tar xvzf latest.tar.gz

Sukurkite manekeno .htaccess failą su komanda:

palieskite /tmp/wordpress/.htaccess

Kopijuoti konfigūracijos rinkmenos pavyzdį į būtiną konfigūracijos failą su komanda:

cp /tmp/wordpress/wp-config-sample.php/tmp/wordpress/wp-config.php

Sukurkite katalogą naujovinimo (siekiant išvengti leidimų problemų) naudodami komandą:

mkdir / tmp / wordpress / wp-content / upgrade

Kopijuoti "WordPress" katalogo turinį į dokumento šakną su komanda:

sudo cp -a / tmp / wordpress /. / var / www / html / wordpress

Galiausiai, pakeiskite naujai perkelto "WordPress" katalogo nuosavybę ir teises naudodami komandas:

Sudo chown -R www-data: www-data / var / www / wordpressSudo rasti / var / www / wordpress / -type d -exec chmod 750 () ;Sudo rasti / var / www / wordpress / -type f -exec chmod 640 () ;

WordPress konfigūravimas

Šis skyrius tampa šiek tiek sudėtingas. Failas wp-config.php turi būti redaguojamas, bet prieš tai gali būti padaryta, turite atsisiųsti unikalius slaptus raktus, kuriuos norite pridėti prie konfigūracijos failo. Norėdami gauti šiuos raktus, išduokite komandą:

Tai išduos daug ilgų eilučių, kiekviena susieta su konkrečia konfigūracijos parinktimi. Kiekviena eilutė yra susieta su šiomis konfigūracijos failo reikšmėmis:

AUTH_KEYSECURE_AUTH_KEYLOGGED_IN_KEYNONCE_KEYAUTH_SALTSECURE_AUTH_SALTLOGGED_IN_SALTNONCE_SALT

Nukopijuokite tas vertes į kitą failą. Kitas atverti konfigūracijos failą Wordpress su komanda:

sudo nano /var/www/wordpress/wp-config.php

Raskite aukščiau pateiktas reikšmes ir įklijuokite slaptą raktą kiekvienam. Po to slinkite aukštyn ir redaguokite vertes:

DB_NAME DB_USER DB_PASSWORD

Aukščiau pateiktos vertės buvo sukurtos anksčiau (su "MySQL").

Išsaugokite ir uždarykite tą failą.

Užbaikite diegimą

Dabar naršyklę galite nukreipti į https: // SERVER_IP / wordpress ir eikite per interneto diegimo programą, kad užbaigtumėte diegimą. Po kelerių paspaudimų ir šiek tiek įvesdami tekstą, jūsų "WordPress" pavyzdys bus įjungtas ir veiks.