Как да инсталирате ProcessWire CMS 3.0 на Debian 9 LAMP VPS

ProcessWire CMS 3.0 е проста, гъвкава и мощна, безплатна система за управление на съдържанието (CMS) с отворен код. ProcessWire CMS 3.0 разполага с лесен за използване API в стил jQuery, напълно модулна архитектура на плъгини и гъвкава и мощна система за шаблони, която осигурява еднакво задоволително потребителско изживяване за дизайнери, разработчици и крайни потребители.

В този урок ще инсталираме ProcessWire CMS 3.0 на Debian 9 LAMP VPS, използвайки уеб сървър на Apache, PHP 7.1 и база данни MariaDB.

Предпоставки

  • Чист Vultr Debian 9 сървърен екземпляр със SSH достъп

Стъпка 1: Добавете потребител на Sudo

Ще започнем с добавяне на нов sudoпотребител.

Първо влезте в сървъра си като root:

ssh root@YOUR_VULTR_IP_ADDRESS

В sudoзаповедта не е инсталиран по подразбиране в Vultr Debain 9 сървъра инстанция, така че ние първи ще се инсталира sudo:

apt-get -y install sudo

Сега добавете нов потребител, наречен user1(или предпочитаното от вас потребителско име):

adduser user1

Когато бъдете подканени, въведете сигурна и запомняща се парола. Ще бъдете подканени и за вашето „Пълно име“ и някои други подробности, но можете просто да ги оставите празни, като натиснете Enter.

Сега проверете /etc/sudoersфайла, за да се уверите, че sudoersгрупата е активирана:

visudo

Потърсете раздел като този:

%sudo        ALL=(ALL:ALL)       ALL

Този ред ни казва, че потребителите, които са членове на sudoгрупата, могат да използват sudoкомандата, за да получат rootпривилегии. По подразбиране трябва да бъде декоментиран, за да можете просто да излезете от файла.

След това трябва да добавим user1към sudoгрупата:

usermod -aG sudo user1

Можем да проверим user1членството в групата и да проверим дали usermodкомандата работи с groupsкомандата:

groups user1

Сега използвайте suкомандата, за да превключите към новия потребителски user1акаунт sudo :

su - user1

Командният ред ще се актуализира, за да покаже, че вече сте влезли в user1акаунта. Можете да проверите това с whoamiкомандата:

whoami

Сега рестартирайте sshdуслугата, за да можете да влезете чрез sshновия не-root потребителски акаунт на sudo, който току-що създадохте:

sudo systemctl restart sshd

Излезте от user1акаунта:

exit

Излезте от rootакаунта (което ще прекъсне връзката на вашата sshсесия):

exit

Вече можете да sshвлезете в сървърния екземпляр от вашия локален хост, като използвате новия не-root потребителски user1акаунт sudo :

ssh user1@YOUR_VULTR_IP_ADDRESS

Ако искате да изпълнявате, sudoбез да се налага да въвеждате парола всеки път, отворете /etc/sudoersфайла отново, като използвате visudo:

sudo visudo

Редактирайте секцията за sudoгрупата, така че да изглежда така:

%sudo   ALL=(ALL) NOPASSWD: ALL

Моля, обърнете внимание: Деактивирането на изискването за парола за потребителя на sudo не е препоръчителна практика, но е включено тук, тъй като може да направи конфигурацията на сървъра много по-удобна и по-малко разочароваща, особено по време на по-дълги сесии на системно администриране. Ако сте загрижени за последиците за сигурността, винаги можете да върнете промяната на конфигурацията към оригинала, след като завършите административните си задачи.

Всеки път, когато искате да влезете в rootпотребителския акаунт от sudoпотребителския акаунт, можете да използвате една от следните команди:

sudo -i
sudo su -

Можете да излезете от rootакаунта и да се върнете обратно към вашия sudoпотребителски акаунт по всяко време, като просто напишете exit.

Стъпка 2: Актуализирайте системата Debian 9

Преди да инсталираме пакети на сървъра на Debian, първо ще актуализираме системата.

Уверете се, че сте влезли в сървъра, като използвате sudo потребител без root права и изпълнете следните команди:

sudo apt-get update
sudo apt-get -y upgrade

Стъпка 3: Инсталирайте уеб сървъра на Apache

Инсталирайте уеб сървъра Apache:

sudo apt-get -y install apache2 

Използвайте systemctlкомандата, за да стартирате и активирате Apache да се изпълнява автоматично при стартиране:

sudo systemctl enable apache2
sudo systemctl start apache2

Проверете конфигурационния файл на вашия сайт по подразбиране на Apache, за да се уверите, че DocumentRootдирективата сочи към правилната директория:

sudo vi /etc/apache2/sites-enabled/000-default.conf 

Опцията за DocumentRootконфигурация ще изглежда така:

DocumentRoot "/var/www/html"

Сега трябва да активираме mod_rewriteмодула Apache, така че се уверете, че вашият конфигурационен файл по подразбиране на Apache все още е отворен и добавете следните Directoryдирективи на Apache точно преди затварящия </VirtualHost>маркер, така че краят на вашия конфигурационен файл да изглежда така:

    <Directory /var/www/html/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

Най-важната директива, показана по-горе, е AllowOverride All.

Сега запазете и излезте от файла и активирайте mod_rewriteмодула Apache:

sudo a2enmod rewrite

Ще рестартираме Apache в края на този урок, но рестартирането на Apache редовно по време на инсталацията и конфигурацията със сигурност е добър навик, така че нека го направим сега:

sudo systemctl restart apache2

Стъпка 4: Инсталирайте PHP 7.0

Вече можем да инсталираме PHP 7.0 заедно с всички необходими PHP модули, изисквани от ProcessWire CMS:

sudo apt-get -y install php php-gd php-mbstring php-common php-mysql php-imagick php-xml libapache2-mod-php php-curl php-zip

Стъпка 5: Инсталирайте MariaDB (MySQL) сървър

Debian 9 по подразбиране използва сървър на база данни MariaDB, който е подобрен, напълно отворен код, разработен от общността, добавен заместител за MySQL сървър.

Инсталирайте сървъра на база данни MariaDB:

sudo apt-get -y install mariadb-server

Стартирайте и активирайте сървъра на MariaDB да се изпълнява автоматично при стартиране:

sudo systemctl enable mariadb
sudo systemctl start mariadb    

Защитете инсталацията на сървъра на MariaDB с:

sudo mysql_secure_installation

В rootПаролата ще бъде празен, така че просто натиснете влиза при подкана за rootпарола.

Когато бъдете подканени да създадете потребител на MariaDB/MySQL root, изберете "Y" (за да) и след това въведете защитена rootпарола. Просто отговорете с "Y" на всички други въпроси с да/не, тъй като предложенията по подразбиране са най-сигурните опции.

Стъпка 6: Създайте база данни за ProcessWire CMS

Влезте в обвивката на MariaDB като rootпотребител на MariaDB, като изпълните следната команда:

sudo mariadb -u root -p

To access the MariaDB command prompt, simply enter the MariaDB root password when prompted.

Run the following queries to create a MariaDB database and database user for 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;

You can replace the database name pw_db and username pw_user with something more to your liking, if you prefer. Also, make sure that you replace "UltraSecurePassword" with an actually secure password.

Step 7: Install ProcessWire CMS Files

Change your current working directory to the default web directory:

cd /var/www/html/

If you get an error message saying something like 'No such file or directory' then try the following command:

cd /var/www/ ; sudo mkdir html ; cd html

Your current working directory will now be: /var/www/html/. You can check this with the pwd (print working directory) command:

pwd

Сега използвайте, за wgetда изтеглите инсталационния пакет ProcessWire CMS:

sudo wget https://github.com/processwire/processwire/archive/master.zip

Моля, обърнете внимание: Определено трябва да проверите за най-новата версия, като посетите страницата за изтегляне на ProcessWire CMS .

Избройте текущата директория, за да проверите дали сте изтеглили файла успешно:

ls -la

Нека бързо да инсталираме, unzipза да можем да разархивираме файла:

sudo apt-get -y install unzip

Премахни index.html:

sudo rm index.html

Сега декомпресирайте zip архива:

sudo unzip master.zip

Преместете всички инсталационни файлове в главната уеб директория:

sudo mv processwire-master/* /var/www/html

Променете собствеността върху уеб файловете, за да избегнете проблеми с разрешенията:

sudo chown -R www-data:www-data * ./

Рестартирайте Apache отново:

sudo systemctl restart apache2

Стъпка 8: Завършете инсталацията на ProcessWire CMS

Сега е време да посетите IP адреса на вашия сървърен екземпляр във вашия браузър или ако вече сте конфигурирали настройките на Vultr DNS (и сте му дали достатъчно време за разпространение), можете просто да посетите вашия домейн вместо това.

За да получите достъп до страницата за инсталиране на ProcessWire CMS, въведете IP адреса на вашия Vultr екземпляр в адресната лента на браузъра, последван от index.php:

http://YOUR_VULTR_IP_ADDRESS/install.php

Инсталаторът на ProcessWire CMS съдържа много опции, така че ето няколко насоки, които да ви помогнат:

  1. На началната страница за инсталиране на ProcessWire CMS щракнете върху Get Startedбутона, за да започнете инсталационния процес.

  2. Сега изберете предпочитания от вас инсталационен профил (или демо сайт) и щракнете върху Continue.

  3. Ще видите Compatibility Checkстраница. Ако видите някакви грешки, това вероятно означава, че ви липсват някои PHP модули или имате проблем с разрешенията, в противен случай можете просто да щракнете върху Continue.

  4. Въведете следните стойности в MySQL Database Settingsстраницата:

    DB Name:            pw_db
    DB User:            pw_user
    DB Pass:            UltraSecurePassword
    DB Host:            localhost
    DB Port:            3306
    
  5. Можете да оставите File Permissionнастройките на техните стойности по подразбиране или да ги коригирате, ако разбирате последствията.

  6. Можете да въведете бъдещите имена на хостове на вашия сайт в съответния раздел или да редактирате site/config.phpфайла по-късно, ако предпочитате.

  7. Щракнете върху, за Continueда конфигурирате базата данни и да инсталирате ProcessWire CMS файловете.

  8. След това изберете предпочитания от вас Admin Theme.

  9. Можете да промените, Admin URLако предпочитате, или просто да го оставите на стойността по подразбиране.

  10. Въведете своя, Admin Login Detailsкакто е показано по-долу:

    User (a-z 0-9):     <admin username>
    Password:           <admin password>
    Password (again):   <same admin password>
    Email Address:      <admin email address>
    
  11. След като бъдат въведени всички подходящи подробности, можете да щракнете, за Continueда финализирате инсталацията на ProcessWire.

  12. След като инсталацията приключи, просто щракнете върху Login to Adminбутона, за да влезете в секцията Admin.

Може да видите предупреждение, което казва нещо като:

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');

Можете да коригирате тази грешка, като редактирате site/config.phpфайла:

sudo vi site/config.php

Добавете подходящата стойност в края на файла:

setlocale(LC_ALL,'en_GB.utf8');

Ако не можете да разберете каква стойност да използвате, можете да намерите списък с подходящи стойности за вашия конкретен екземпляр на сървъра, като изпълните localeкомандата:

locale -a

Не забравяйте да запазите и излезете от site/config.phpфайла, когато приключите с редактирането.

От съображения за сигурност се уверете, че сте променили разрешенията за site/config.phpфайла:

sudo chmod 400 site/config.php

Рестартирайте Apache.

sudo systemctl restart apache2

Готови сте да започнете да добавяте вашето съдържание и да конфигурирате облика и усещането на вашия сайт. Не забравяйте да разгледате отличната документация на ProcessWire CMS за повече информация как да изградите и конфигурирате вашия сайт.


Как да инсталирате Thelia 2.3 на Debian 9

Как да инсталирате Thelia 2.3 на Debian 9

Използване на различна система? Thelia е инструмент с отворен код за създаване на уебсайтове за е-бизнес и управление на онлайн съдържание, написано на PHP. Изходен код на Thelia i

Как да инсталирате Microweber на CentOS 7

Как да инсталирате Microweber на CentOS 7

Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже

Инсталиране на Microweber на Ubuntu 16.04

Инсталиране на Microweber на Ubuntu 16.04

Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже

Как да инсталирате dotCMS на Ubuntu 16.04

Как да инсталирате dotCMS на Ubuntu 16.04

Използване на различна система? DotCMS е система за управление на съдържанието от корпоративен клас с отворен код, написана на Java. Той съдържа почти всички необходими функции

Как да инсталирате Pagekit 1.0 CMS на FreeBSD 11 FAMP VPS

Как да инсталирате Pagekit 1.0 CMS на FreeBSD 11 FAMP VPS

Използване на различна система? Pagekit 1.0 CMS е красива, модулна, разширяема и лека, безплатна система за управление на съдържанието (CMS) с отворен код с

Как да инсталирате BigTree CMS на Fedora 26 LAMP VPS

Как да инсталирате BigTree CMS на Fedora 26 LAMP VPS

Използване на различна система? BigTree CMS 4.2 е бърза и лека, безплатна и с отворен код, корпоративна система за управление на съдържанието (CMS) с обширна

Инсталиране на Pagekit CMS на Ubuntu 16.04 LTS

Инсталиране на Pagekit CMS на Ubuntu 16.04 LTS

Използване на различна система? Pagekit е CMS с отворен код, написан на PHP. Изходният код на Pagekit се хоства на GitHub. Това ръководство ще ви покаже как да инсталирате

Как да инсталирате PyroCMS на Ubuntu 16.04

Как да инсталирате PyroCMS на Ubuntu 16.04

Използване на различна система? PyroCMS е CMS с отворен код, написан на PHP. Изходният код на PyroCMS се хоства на GitHub. В това ръководство добре се разходете из целия

Как да инсталирате Subrion 4.1 CMS на FreeBSD 11 FAMP VPS

Как да инсталирате Subrion 4.1 CMS на FreeBSD 11 FAMP VPS

Използване на различна система? Subrion 4.1 CMS е мощна и гъвкава система за управление на съдържанието (CMS) с отворен код, която носи интуитивно и ясно съдържание

Как да инсталирате Backdrop CMS 1.8.0 на Debian 9 LAMP VPS

Как да инсталирате Backdrop CMS 1.8.0 на Debian 9 LAMP VPS

Използване на различна система? Backdrop CMS 1.8.0 е проста и гъвкава, удобна за мобилни устройства, безплатна система за управление на съдържанието (CMS) с отворен код, която ни позволява

Как да инсталирате Roadiz CMS на Debian 9

Как да инсталирате Roadiz CMS на Debian 9

Използване на различна система? Въведение Roadiz е модерна CMS, предназначена да обработва много видове услуги. Въз основа на компонентите на Symfony и Doctrine ORM, т.е

Инсталиране на Microweber на Debian 9

Инсталиране на Microweber на Debian 9

Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже

Как да инсталирате Grav CMS на Fedora 28

Как да инсталирате Grav CMS на Fedora 28

Използване на различна система? Grav е CMS с плосък файл с отворен код, написан на PHP. Изходният код на Grav се хоства публично на GitHub. Това ръководство ще ви покаже как т

Как да инсталирате Grav CMS на Debian 9

Как да инсталирате Grav CMS на Debian 9

Използване на различна система? Grav е CMS с плосък файл с отворен код, написан на PHP. Изходният код на Grav се хоства публично на GitHub. Това ръководство ще ви покаже как т

Как да инсталирате Automad CMS на CentOS 7

Как да инсталирате Automad CMS на CentOS 7

Използване на различна система? Automad е файлова система за управление на съдържанието (CMS) с отворен код и шаблонна машина, написана на PHP. Изходният код на Automad i

Как да инсталирате Raneto на Ubuntu 17.10

Как да инсталирате Raneto на Ubuntu 17.10

Raneto е безплатна база от знания с отворен код, изградена на Node.js, която е лесна за настройка и използване, както и лесна за администриране. Категории и страници ar

Как да инсталирате Thelia 2.3 на Ubuntu 16.04

Как да инсталирате Thelia 2.3 на Ubuntu 16.04

Използване на различна система? Thelia е инструмент с отворен код за създаване на уебсайтове за е-бизнес и управление на онлайн съдържание, написано на PHP. Изходен код на Thelia i

Как да инсталирате октомври 1.0 CMS на Debian 9 LAMP VPS

Как да инсталирате октомври 1.0 CMS на Debian 9 LAMP VPS

Използване на различна система? Октомври 1.0 CMS е проста и надеждна, безплатна и отворена система за управление на съдържанието (CMS), изградена върху рамката Laravel

Как да инсталирате ImpressPages CMS 5.0 на Ubuntu 16.04 LAMP VPS

Как да инсталирате ImpressPages CMS 5.0 на Ubuntu 16.04 LAMP VPS

Използване на различна система? ImpressPages CMS 5.0 е проста и ефективна, безплатна и с отворен код, лесна за потребителя, базирана на MVC, система за управление на съдържанието (CMS)

How to Install CMS Made Simple 2.2 on a Debian 9 LAMP VPS

How to Install CMS Made Simple 2.2 on a Debian 9 LAMP VPS

Using a Different System? CMS Made Simple 2.2 is a flexible and extensible, free and open source Content Management System (CMS) intelligently designed to b

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече