Preduvjeti
Korak 1: Dodajte Sudo korisnika
Korak 2: Ažurirajte FreeBSD 11 sustav
Korak 3: Instalirajte Apache web poslužitelj
Korak 4: Instalirajte PHP 7.1
Korak 5: Instalirajte MariaDB (MySQL) poslužitelj
Korak 6: Napravite bazu podataka za ProcessWire CMS
Korak 7: Instalirajte ProcessWire CMS datoteke
Korak 8: Dovršite instalaciju ProcessWire CMS-a
ProcessWire CMS 3.0 je jednostavan, fleksibilan i moćan, besplatan i otvoreni sustav za upravljanje sadržajem (CMS). ProcessWire CMS 3.0 sadrži API u stilu jQueryja jednostavan za korištenje, potpuno modularnu arhitekturu dodataka i fleksibilan i moćan sustav predložaka koji pruža jednako zadovoljavajuće korisničko iskustvo za dizajnere, programere i krajnje korisnike.
U ovom vodiču ćemo instalirati ProcessWire CMS 3.0 na FreeBSD 11 FAMP VPS koristeći Apache web poslužitelj, PHP 7.1 i MariaDB bazu podataka.
Preduvjeti
- Čista instanca poslužitelja Vultr FreeBSD 11 sa SSH pristupom
Korak 1: Dodajte Sudo korisnika
Započet ćemo dodavanjem novog sudokorisnika.
Prvo se prijavite na svoj poslužitelj kao root:
ssh root@YOUR_VULTR_IP_ADDRESS
sudoNaredba nije instaliran po defaultu u Vultr FreeBSD 11 instance poslužitelja, tako da će prvo instalirati sudo:
pkg install sudo
Dodajte novog korisnika pod nazivom user1(ili svoje željeno korisničko ime):
adduser user1
adduserNaredba će vas pitati za mnogo detalja za korisnički račun, tako da jednostavno odaberete zadane za većinu njih kad ima smisla za to. Kada budete upitani hoćete li Invite user1 into any other groups?, trebate unijeti wheelda biste dodali user1u wheelgrupu.
Sada provjerite /etc/sudoersdatoteku kako biste bili sigurni da je sudoersgrupa omogućena:
visudo
Potražite odjeljak poput ovoga:
# %wheel ALL=(ALL) ALL
Ovaj redak nam govori da korisnici koji su članovi wheelgrupe mogu koristiti sudonaredbu za stjecanje rootprivilegija. Zadano će biti komentirano tako da ćete ga morati ukloniti iz komentara, a zatim spremiti i izaći iz datoteke.
user1Članstvo u grupi možemo provjeriti groupsnaredbom:
groups user1
Ako user1nije član wheelgrupe, možete koristiti ovu naredbu za ažuriranje user1članstva u grupi:
pw group mod wheel -m user1
Sada koristite sunaredbu za prebacivanje na novi sudo korisnički user1račun:
su - user1
Naredbeni redak će se ažurirati kako bi naznačio da ste sada prijavljeni na user1račun. To možete provjeriti whoaminaredbom:
whoami
Sada ponovno pokrenite sshduslugu kako biste se mogli prijaviti putem sshnovog sudo korisničkog računa koji ste upravo kreirali:
sudo /etc/rc.d/sshd restart
Izađite iz user1računa:
exit
Izađite iz rootračuna (što će prekinuti vašu sshsesiju):
exit
Sada možete sshući u instancu poslužitelja sa svog lokalnog hosta koristeći novi nekorijenski sudo korisnički user1račun:
ssh user1@YOUR_VULTR_IP_ADDRESS
Ako želite izvršiti sudobez potrebe da svaki put upisujete lozinku, zatim ponovo otvorite /etc/sudoersdatoteku pomoću visudo:
sudo visudo
Uredite odjeljak za wheelgrupu tako da izgleda ovako:
%wheel ALL=(ALL) NOPASSWD: ALL
Napomena: Onemogućavanje zahtjeva za lozinkom za sudo korisnika nije preporučena praksa, ali je ovdje uključena jer može učiniti konfiguraciju poslužitelja mnogo praktičnijom i manje frustrirajućom, osobito tijekom dužih sesija administracije sustava. Ako ste zabrinuti zbog sigurnosnih implikacija, uvijek možete vratiti promjenu konfiguracije na izvornu nakon što završite svoje administrativne zadatke.
Kad god se želite prijaviti na rootkorisnički račun iz sudokorisničkog računa, možete koristiti jednu od sljedećih naredbi:
sudo -i
sudo su -
Možete izaći s rootračuna i vratiti se na svoj sudokorisnički račun u bilo kojem trenutku jednostavnim upisivanjem exit.
Korak 2: Ažurirajte FreeBSD 11 sustav
Prije instaliranja bilo kojeg paketa na instancu poslužitelja FreeBSD, prvo ćemo ažurirati sustav.
Provjerite jeste li prijavljeni na poslužitelj koristeći sudo korisnika koji nije root i pokrenite sljedeće naredbe:
sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade
Korak 3: Instalirajte Apache web poslužitelj
Instalirajte Apache 2.4 web poslužitelj:
sudo pkg install apache24
I unesite ykada se to od vas zatraži. Sada upotrijebite sysrcnaredbu da omogućite automatsko izvršavanje usluge Apache prilikom pokretanja:
sudo sysrc apache24_enable=yes
sysrcNaredba ažurira /etc/rc.confkonfiguracijsku datoteku, pa ako želite ručno provjeriti ažuriranja konfiguraciju možete jednostavno otvoriti /etc/rc.confdatoteku s omiljenom terminala urednika:
vi /etc/rc.conf
Sada pokrenite uslugu Apache:
sudo service apache24 start
Možete brzo provjeriti radi li se apache tako da posjetite IP adresu ili domenu instance poslužitelja u vašem pregledniku:
http://YOUR_VULTR_IP_ADDRESS/
Vidjet ćete zadanu stranicu FreeBSD Apache koja prikazuje tekst:
It works!
Provjerite svoju zadanu konfiguracijsku datoteku Apachea kako biste bili sigurni da DocumentRootdirektiva ukazuje na ispravan direktorij:
sudo vi /usr/local/etc/apache24/httpd.conf
Opcija DocumentRootkonfiguracije će izgledati ovako:
DocumentRoot "/usr/local/www/apache24/data"
Sada moramo omogućiti mod_rewriteApache modul. To možemo učiniti pretraživanjem zadane Apache konfiguracijske datoteke za pojam mod_rewrite.
Prema zadanim postavkama, mod_rewriteApache modul će biti komentiran (što znači da je onemogućen). Konfiguracijska linija na čistoj instanci Vultr FreeBSD 11 izgledat će ovako:
#LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Jednostavno uklonite hash simbol da dekomentirate redak i učitate modul. Ovo se, naravno, odnosi i na sve ostale potrebne Apache module:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Sada moramo urediti DirectoryApache direktivu u istoj konfiguracijskoj datoteci tako da mod_rewriteće ispravno raditi s ProcessWire CMS-om.
Pronađite odjeljak konfiguracijske datoteke koji počinje s <Directory "/usr/local/www/apache24/data">i promijenite AllowOverride noneu AllowOverride All. Konačni rezultat (sa uklonjenim svim komentarima) izgledat će otprilike ovako:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Sada spremite i izađite iz Apache konfiguracijske datoteke.
Ponovo ćemo pokrenuti Apache na kraju ovog vodiča, ali redovito ponovno pokretanje Apachea tijekom instalacije i konfiguracije svakako je dobra navika, pa učinimo to sada:
sudo service apache24 restart
Korak 4: Instalirajte PHP 7.1
Sada možemo instalirati PHP 7.1 zajedno sa svim potrebnim PHP modulima koje zahtijeva ProcessWire CMS:
sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip
FreeBSD 11 nam daje mogućnost korištenja razvoja php.iniili produkcije php.ini. Budući da ćemo Siverstripe instalirati na javni web poslužitelj, koristit ćemo produkcijsku verziju. Prvo napravite sigurnosnu kopiju php.ini-production:
sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup
Zatim meku vezu php.ini-productionna php.ini.
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
We need to configure Apache to actually use PHP, so let's create a new file called php.conf in the Apache Includes directory:
sudo vi /usr/local/etc/apache24/Includes/php.conf
Enter the following text into the newly created file:
<IfModule dir_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>
Save and exit the file.
Now let's restart Apache so that it can reload the configuration changes:
sudo service apache24 restart
Step 5: Install MariaDB (MySQL) Server
FreeBSD 11 defaults to using MariaDB database server, which is an enhanced, fully open source, community developed, drop-in replacement for MySQL server.
Install MariaDB database server:
sudo pkg install mariadb102-server mariadb102-client
Start and enable MariaDB server to execute automatically at boot time:
sudo sysrc mysql_enable="yes"
sudo service mysql-server start
Secure your MariaDB server installation:
sudo mysql_secure_installation
Kada se od vas zatraži da kreirate MariaDB/MySQL rootkorisnika, odaberite "Y" (za da), a zatim unesite sigurnu rootlozinku. Jednostavno odgovorite "Y" na sva ostala da/ne pitanja jer su zadani prijedlozi najsigurnije opcije.
Korak 6: Napravite bazu podataka za ProcessWire CMS
Prijavite se u ljusku MariaDB kao rootkorisnik MariaDB pokretanjem sljedeće naredbe:
sudo mysql -u root -p
Za pristup MariaDB naredbenom retku, jednostavno unesite MariaDB rootlozinku kada se to od vas zatraži.
Pokrenite sljedeće upite za stvaranje MariaDB baze podataka i korisnika baze podataka za ProcessWire CMS:
CREATE DATABASE pw_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'pw_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON pw_db.* TO 'pw_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Naziv baze podataka pw_dbi korisničko ime možete zamijeniti pw_usernečim više po svom ukusu, ako želite. Također, provjerite jeste li zamijenili "UltraSecurePassword" stvarno sigurnom lozinkom.
Korak 7: Instalirajte ProcessWire CMS datoteke
Promijenite svoj trenutni radni direktorij u zadani web direktorij:
cd /usr/local/www/apache24/data
Vaš trenutni radni imenik sada bi trebao biti: /usr/local/www/apache24/data. To možete provjeriti pwdnaredbom (ispis radnog imenika):
pwd
Sada koristite wgetza preuzimanje instalacijskog paketa ProcessWire CMS:
sudo wget https://github.com/processwire/processwire/archive/master.zip
Napomena: svakako biste trebali provjeriti najnoviju verziju tako što ćete posjetiti stranicu za preuzimanje ProcessWire CMS-a .
Navedite trenutni direktorij kako biste provjerili jeste li uspješno preuzeli datoteku:
ls -la
Ukloni index.html:
sudo rm index.html
Sada dekomprimirajte zip arhivu:
sudo unzip master.zip
Premjestite sve instalacijske datoteke u web korijenski direktorij:
sudo mv processwire-master/* /usr/local/www/apache24/data
Promijenite vlasništvo nad web datotekama kako biste izbjegli probleme s dopuštenjima:
sudo chown -R www:www * ./
Ponovno pokrenite Apache:
sudo service apache24 restart
Korak 8: Dovršite instalaciju ProcessWire CMS-a
Sada je vrijeme da posjetite IP adresu instance vašeg poslužitelja u vašem pregledniku ili ako ste već konfigurirali svoje Vultr DNS postavke (i dali ste mu dovoljno vremena za širenje), možete jednostavno posjetiti svoju domenu.
Da biste pristupili instalacijskoj stranici ProcessWire CMS-a, unesite IP adresu svoje instance Vultr u adresnu traku preglednika, a zatim index.php:
http://YOUR_VULTR_IP_ADDRESS/install.php
Instalacijski program ProcessWire CMS-a sadrži mnogo opcija, pa evo nekoliko savjeta koji će vam pomoći:
Na stranici dobrodošlice za instalaciju ProcessWire CMS-a kliknite Get Startedgumb za pokretanje postupka instalacije.
Sada odaberite željeni instalacijski profil (ili demo stranicu) i kliknite Continue.
Vidjet ćete Compatibility Checkstranicu. Ako vidite bilo kakve pogreške, to vjerojatno znači da vam nedostaju neki PHP moduli ili imate problem s dopuštenjima, inače možete jednostavno kliknuti Continue.
Unesite sljedeće vrijednosti na MySQL Database Settingsstranicu:
DB Name: pw_db
DB User: pw_user
DB Pass: UltraSecurePassword
DB Host: localhost
DB Port: 3306
File PermissionPostavke možete ostaviti na zadanim vrijednostima ili ih možete prilagoditi ako razumijete implikacije.
Možete unijeti buduća imena hostova svoje stranice u odgovarajući odjeljak ili možete site/config.phpkasnije urediti datoteku ako želite.
Kliknite Continueda biste konfigurirali bazu podataka i instalirali ProcessWire CMS datoteke.
Zatim odaberite željenu opciju Admin Theme.
Ako želite, možete promijeniti Admin URLili ga jednostavno ostaviti na zadanoj vrijednosti.
Unesite svoje Admin Login Detailskao što je prikazano u nastavku:
User (a-z 0-9): <admin username>
Password: <admin password>
Password (again): <same admin password>
Email Address: <admin email address>
Nakon što unesete sve odgovarajuće pojedinosti, možete kliknuti Continueda biste dovršili instalaciju ProcessWire.
Kada je instalacija dovršena, jednostavno kliknite na Login to Admingumb za prijavu u odjeljak Administrator.
Možda ćete vidjeti upozorenje koje kaže nešto poput:
Warning: your server locale is undefined and may cause issues. Please add this to /site/config.php file (adjust en_US.UTF-8†as needed): setlocale(LC_ALL,'en_US.UTF-8');
Ovu grešku možete popraviti uređivanjem site/config.phpdatoteke:
sudo vi site/config.php
Dodajte odgovarajuću vrijednost na kraj datoteke:
setlocale(LC_ALL,'en_GB.utf8');
Ako ne možete shvatiti koju vrijednost upotrijebiti, možete pronaći popis odgovarajućih vrijednosti za svoju instancu poslužitelja pokretanjem localenaredbe:
locale -a
Ne zaboravite spremiti i izaći iz site/config.phpdatoteke kada završite s uređivanjem.
Iz sigurnosnih razloga, provjerite jeste li promijenili dopuštenja za site/config.phpdatoteku:
sudo chmod 400 site/config.php
Ponovno pokrenite Apache.
sudo service apache24 restart
Spremni ste početi dodavati svoj sadržaj i konfigurirati izgled i dojam svoje stranice. Svakako provjerite izvrsnu dokumentaciju ProcessWire CMS-a za više informacija o tome kako izgraditi i konfigurirati svoju web stranicu.