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

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

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

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

Добавете потребител на Sudo

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

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

ssh root@YOUR_VULTR_IP_ADDRESS

Добавете нов потребител, наречен user1(или друго име, което предпочитате).

useradd user1

След това задайте паролата за user1потребителя.

passwd user1

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

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

vi sudo

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

%wheel        ALL=(ALL)       ALL

Докато не е коментирана, това ни казва, че потребителите, които са членове на wheelгрупата, могат да използват sudoкомандата, за да получат rootпривилегии. Ако е коментиран, ще трябва да го декомментирате и да запазите файла, като натиснете клавиша " Escape" (за влизане в команден режим) и след това напишете :wq(последвано от " Enter"), за да напишете промените във файла и да излезете от редактора.

Моля, обърнете внимание: Ако вашият терминален редактор по подразбиране не е настроен на viили vim, ще трябва да използвате някои алтернативни команди, за да запазите и излезете от файла.

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

usermod -aG wheel 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

Стъпка 1: Актуализирайте системата Fedora

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

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

sudo dnf -y update

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

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

sudo dnf -y install httpd

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

sudo systemctl enable httpd
sudo systemctl start httpd

Сега трябва да се уверим, че mod_rewriteмодулът Apache е зареден. Можем да направим това, като потърсим в конфигурационния файл на базовите модули на Fedora Apache за термина mod_rewrite.

sudo vi /etc/httpd/conf.modules.d/00-base.conf

Търсене за понятието mod_rewriteв viпо писане /mod_rewriteв команден режим (след натискане на " escape" клавиша).

Ако mod_rewriteмодулът Apache е зареден, конфигурационният ред трябва да изглежда така.

LoadModule rewrite_module modules/mod_rewrite.so

Ако горният ред започва с точка и запетая, ще трябва да премахнете точката и запетая, за да декоментирате реда и да заредите модула. Това, разбира се, важи и за всички други необходими модули на Apache.

Ако използвате viредактора, можете да запазите файла, като натиснете клавиша " Escape" (за да влезете в команден режим) и след това въведете, за :wqда запишете всички промени във файла и излезете от редактора.

Сега трябва да редактираме конфигурационния файл по подразбиране на Apache, така че mod_rewriteда работи правилно със SilverStripe. Така че отворете файла.

sudo vi /etc/httpd/conf/httpd.conf

След това намерете секцията, която започва с <Directory "/var/www/html">и променете AllowOverride noneна AllowOverride All. Крайният резултат (с премахнати всички коментари) трябва да изглежда така.

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

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

DocumentRoot "/var/www/html"

Вече можете да запазите и затворите конфигурационния файл на Apache.

Сега трябва да отворим по подразбиране HTTPи HTTPSпортовете, тъй като те ще бъдат блокирани firewalldпо подразбиране.

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

Презаредете, за firewalldда приложите промените.

sudo firewall-cmd --reload

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

sudo systemctl restart httpd

Стъпка 3: Деактивирайте SELinux

SELinux е съкращение от „Подобрена сигурност Linux“. Това е подобрение на сигурността на Linux, което позволява на потребителите и администраторите повече контрол върху контрола на достъпа. Той е активиран по подразбиране във Fedora 26, но определено не е от съществено значение за сигурността на сървъра, тъй като много дистрибуции на Linux сървъри не се доставят с инсталиран или активиран по подразбиране.

За да избегнем проблеми с разрешенията за файлове със SilverStripe CMS по-късно, засега ще деактивираме SELinux. Отворете конфигурационния файл на SELinux с любимия си терминален редактор.

sudo vi /etc/selinux/config

И променете SELINUX=enforcingна SELINUX=disabled, след което запазете файла.

За да приложи промяната на конфигурацията, SELinux изисква рестартиране на сървъра, така че можете или да рестартирате сървъра чрез контролния панел на Vultr, или просто да използвате shutdownкомандата.

sudo shutdown -r now

Когато сървърът се рестартира, вашата SSH сесия ще бъде прекъсната и може да видите съобщение, което се оплаква от 'broken pipe'или ви информира 'Connection closed by remote host'. Това не е причина за притеснение, просто изчакайте около 20 секунди и след това SSH отново (със вашето собствено потребителско име и домейн).

ssh [email protected]

Или (със вашето собствено потребителско име и IP адрес).

ssh user1@YOUR_VULTR_IP_ADDRESS

След като влезете отново, трябва да проверите състоянието на SELinux с sestatusкомандата, за да се уверите, че е правилно деактивиран.

sudo sestatus

Трябва да видите съобщение, което гласи SELinux status: disabled. Ако видите съобщение, което казва SELinux status: enabled(или нещо подобно), ще трябва да повторите стъпките по-горе и да се уверите, че правилно рестартирате сървъра си.

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

Вече можем да инсталираме PHP 7.1 заедно с необходимите PHP модули, изисквани от SilverStripe.

sudo dnf -y install php php-gd php-mbstring php-xml php-tidy php-mysqlnd

Опцията за date.timezoneконфигурация в php.iniтрябва да бъде зададена правилно. Така че отворете php.iniфайла си с любимия си редактор на терминали.

sudo vi /etc/php.ini

Задайте date.timezoneопцията на предпочитаната от вас часова зона. Правилната настройка за лондонски екземпляр, например, би изглеждала така.

date.timezone = Europe/London

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

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

Инсталирайте MariaDB.

sudo dnf -y install mariadb-server

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

sudo systemctl enable mariadb
sudo systemctl start mariadb    

И подсигурете инсталацията на сървъра на MariaDB.

sudo mysql_secure_installation

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

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

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

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

sudo mysql -u root -p

За достъп до командния ред на MariaDB, просто въведете rootпаролата за MariaDB, когато бъдете подканени.

Изпълнете следните заявки, за да създадете база данни на MariaDB и потребител на база данни за SilverStripe.

CREATE DATABASE ss_data CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'ss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON ss_data.* TO 'ss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Можете да замените името на базата данни ss_dataи потребителското име ss_userс нещо повече по ваш вкус, ако предпочитате. Освен това се уверете, че сте променили „UltraSecurePassword“ на действително сигурна парола.

Стъпка 7: Инсталирайте Silverstripe CMS файлове

Променете текущата си работна директория към уеб директорията по подразбиране.

cd /var/www/html/

Ако получите съобщение за грешка, което казва нещо подобно, 'No such file or directory'опитайте следната команда.

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

Сегашната ви работна директория трябва да бъде /var/www/html/. Можете да проверите това с pwdкомандата (отпечатване на работна директория).

pwd

Можем да използваме wgetлесно за изтегляне на SilverStripe CMS tarball.

sudo wget https://silverstripe-ssorg-releases.s3.amazonaws.com/sssites-ssorg-prod/assets/releases/SilverStripe-cms-v3.6.2.tar.gz

Моля, обърнете внимание: Определено трябва да проверите за най-новата версия, като проверите страницата за изтегляне на SilverStripe . Просто щракнете с десния бутон върху бутона за изтегляне на страницата и копирайте URL адреса. След това можете да поставите най-актуалния URL адрес на tarball в wgetкомандата, показана по-горе.

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

ls -la

Сега декомпресирайте tarball-а.

sudo tar xvzf SilverStripe-cms-v3.6.2.tar.gz

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

sudo chown -R apache:apache * .htaccess

Нека рестартираме Apache отново.

sudo systemctl restart httpd

Сега сме готови да преминем към последната стъпка.

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

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

Просто въведете следните данни за базата данни (или вашите еквивалентни избори) в страницата за инсталиране на SilverStripe.

Database server: localhost
Database username: ss_user
Database password: UltraSecurePassword
Database name: ss_data

Сега попълнете своя имейл, парола (за достъп до администраторската секция на SilverStripe) и задайте своя език по подразбиране.

Email: [email protected]
Password: AnotherUltraSecurePassword
Default language: English UK 

След като попълните всички необходими данни, можете просто да кликнете върху Install SilverStripeбутона и вашият нов SilverStripe CMS ще се инсталира успешно.

Моля, обърнете внимание: Може да получите предупреждение, че инсталационните файлове не се премахват. Ако случаят е такъв, просто се върнете към терминала и стартирайте.

sudo rm install.php

И това трябва да свърши работа. След това малко поправка можете просто да опресните страницата с предупрежденията в браузъра си и трябва да сте готови.

Ако все още не сте настроили своя Vultr DNS, вероятно това трябва да е следващата ви стъпка.

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


Възходът на машините: Реални приложения на 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 машини. Прочетете тази статия, за да научите повече