Jak zainstalować ProcessWire CMS 3.0 na FreeBSD 11 FAMP VPS

ProcessWire CMS 3.0 to prosty, elastyczny i wydajny, bezpłatny i otwarty system zarządzania treścią (CMS). ProcessWire CMS 3.0 oferuje łatwy w użyciu interfejs API w stylu jQuery, w pełni modułową architekturę wtyczek oraz elastyczny i wydajny system szablonów, który zapewnia równie satysfakcjonujące wrażenia dla projektantów, programistów i użytkowników końcowych.

W tym samouczku zamierzamy zainstalować ProcessWire CMS 3.0 na FreeBSD 11 FAMP VPS przy użyciu serwera WWW Apache, PHP 7.1 i bazy danych MariaDB.

Wymagania wstępne

  • Czysta instancja serwera Vultr FreeBSD 11 z dostępem SSH

Krok 1: Dodaj użytkownika Sudo

Zaczniemy od dodania nowego sudoużytkownika.

Najpierw zaloguj się do swojego serwera jako root:

ssh root@YOUR_VULTR_IP_ADDRESS

sudoPolecenie nie jest instalowany domyślnie w Vultr FreeBSD przykład 11 serwerów, więc będziemy najpierw zainstalować sudo:

pkg install sudo

Dodaj nowego użytkownika o nazwie user1(lub preferowaną nazwę użytkownika):

adduser user1

adduserPolecenie poprosi o wiele szczegółów dotyczących konta użytkownika, więc po prostu wybrać domyślne dla większości z nich, gdy ma to sens, aby to zrobić. Kiedy pojawi się pytanie, czy chcesz Invite user1 into any other groups?, powinieneś wejść, wheelaby dodać user1do wheelgrupy.

Teraz sprawdź /etc/sudoersplik, aby upewnić się, że sudoersgrupa jest włączona:

visudo

Poszukaj takiej sekcji:

# %wheel        ALL=(ALL)       ALL

Ta linia mówi nam, że użytkownicy będący członkami wheelgrupy mogą użyć sudopolecenia, aby uzyskać rootuprawnienia. Zostanie domyślnie skomentowany, więc będziesz musiał cofnąć komentarz, a następnie zapisać i zamknąć plik.

Możemy zweryfikować user1członkostwo w grupie za pomocą groupspolecenia:

groups user1

Jeśli user1nie należy do wheelgrupy, możesz użyć tego polecenia, aby zaktualizować user1członkostwo w grupie:

pw group mod wheel -m user1 

Teraz użyj supolecenia, aby przełączyć się na nowe user1konto użytkownika sudo :

su - user1

Wiersz polecenia zostanie zaktualizowany, aby wskazać, że jesteś teraz zalogowany na user1konto. Możesz to sprawdzić za pomocą whoamipolecenia:

whoami

Teraz uruchom ponownie sshdusługę, aby móc się zalogować za sshpomocą nowego konta użytkownika sudo, które nie jest rootem:

sudo /etc/rc.d/sshd restart

Wyjdź z user1konta:

exit

Wyjdź z rootkonta (które rozłączy sshsesję):

exit

Możesz teraz sshwejść do instancji serwera z lokalnego hosta, korzystając z nowego user1konta użytkownika sudo innego niż root :

ssh user1@YOUR_VULTR_IP_ADDRESS

Jeśli chcesz wykonać sudobez konieczności wpisywania hasła za każdym razem, otwórz /etc/sudoersplik ponownie, używając visudo:

sudo visudo

Edytuj sekcję dla wheelgrupy, aby wyglądała następująco:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Uwaga: Wyłączenie wymagania hasła dla użytkownika sudo nie jest zalecaną praktyką, ale zostało ono tutaj uwzględnione, ponieważ może znacznie ułatwić konfigurację serwera i zmniejszyć frustrację, szczególnie podczas dłuższych sesji administracji systemem. Jeśli obawiasz się wpływu na bezpieczeństwo, zawsze możesz przywrócić pierwotną zmianę konfiguracji po zakończeniu zadań administracyjnych.

Ilekroć chcesz zalogować się na rootkonto użytkownika z poziomu sudokonta użytkownika, możesz użyć jednego z następujących poleceń:

sudo -i
sudo su -

Możesz wyjść z rootkonta i wrócić do konta sudoużytkownika w dowolnym momencie, po prostu wpisując exit.

Krok 2: Zaktualizuj system FreeBSD 11

Przed zainstalowaniem jakichkolwiek pakietów na instancji serwera FreeBSD najpierw zaktualizujemy system.

Upewnij się, że jesteś zalogowany na serwerze za pomocą użytkownika sudo innego niż root i uruchom następujące polecenia:

sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade

Krok 3: Zainstaluj serwer WWW Apache

Zainstaluj serwer WWW Apache 2.4:

sudo pkg install apache24

I wprowadź ypo wyświetleniu monitu. Teraz użyj sysrcpolecenia, aby usługa Apache mogła się uruchamiać automatycznie podczas uruchamiania:

sudo sysrc apache24_enable=yes

sysrcKomenda aktualizuje /etc/rc.confplik konfiguracyjny, więc jeśli chcesz ręcznie sprawdzić aktualizację konfiguracji można po prostu otworzyć /etc/rc.confplik w edytorze terminala:

vi /etc/rc.conf

Teraz uruchom usługę Apache:

sudo service apache24 start

Możesz szybko sprawdzić, czy apache działa, odwiedzając adres IP lub domenę instancji serwera w przeglądarce:

http://YOUR_VULTR_IP_ADDRESS/

Zobaczysz domyślną stronę Apache FreeBSD wyświetlającą tekst:

It works!

Sprawdź domyślny plik konfiguracyjny Apache, aby upewnić się, że DocumentRootdyrektywa wskazuje właściwy katalog:

sudo vi /usr/local/etc/apache24/httpd.conf

Opcja DocumentRootkonfiguracji będzie wyglądać następująco:

DocumentRoot "/usr/local/www/apache24/data"

Teraz musimy włączyć mod_rewritemoduł Apache. Możemy to zrobić, wyszukując termin w domyślnym pliku konfiguracyjnym Apache mod_rewrite.

Domyślnie mod_rewritemoduł Apache zostanie skomentowany (co oznacza, że ​​jest wyłączony). Linia konfiguracji na czystej instancji Vultr FreeBSD 11 będzie wyglądać następująco:

#LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Wystarczy usunąć symbol skrótu, aby odkomentować linię i załadować moduł. Dotyczy to oczywiście również wszystkich innych wymaganych modułów Apache:

LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Teraz musimy edytować Directorydyrektywę Apache w tym samym pliku konfiguracyjnym, aby mod_rewritedziałał poprawnie z ProcessWire CMS.

Znajdź sekcję pliku konfiguracyjnego, która zaczyna się od, <Directory "/usr/local/www/apache24/data">i zmień AllowOverride nonena AllowOverride All. Wynik końcowy (z usuniętymi wszystkimi komentarzami) będzie wyglądał mniej więcej tak:

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

Teraz zapisz i zamknij plik konfiguracyjny Apache.

Zrestartujemy Apache pod koniec tego samouczka, ale regularne restartowanie Apache podczas instalacji i konfiguracji jest z pewnością dobrym nawykiem, więc zróbmy to teraz:

sudo service apache24 restart

Krok 4: Zainstaluj PHP 7.1

Możemy teraz zainstalować PHP 7.1 wraz ze wszystkimi niezbędnymi modułami PHP wymaganymi przez 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 daje nam możliwość wykorzystania rozwoju php.inilub produkcji php.ini. Ponieważ zamierzamy zainstalować Siverstripe na publicznym serwerze WWW, użyjemy wersji produkcyjnej. Najpierw wykonaj kopię zapasową php.ini-production:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup

Następnie miękkie łącze php.ini-productiondo php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Musimy skonfigurować Apache, aby faktycznie używał PHP, więc stwórzmy nowy plik o nazwie php.confw Includeskatalogu Apache :

sudo vi /usr/local/etc/apache24/Includes/php.conf

Wprowadź następujący tekst do nowo utworzonego pliku:

<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>

Zapisz i zamknij plik.

Teraz zrestartujmy Apache, aby mógł ponownie załadować zmiany konfiguracji:

sudo service apache24 restart

Krok 5: Zainstaluj serwer MariaDB (MySQL)

FreeBSD 11 domyślnie korzysta z serwera bazy danych MariaDB, który jest ulepszonym, w pełni otwartym, opracowanym przez społeczność, zastępczym zamiennikiem dla serwera MySQL.

Zainstaluj serwer bazy danych MariaDB:

sudo pkg install mariadb102-server mariadb102-client

Uruchom i włącz serwer MariaDB, aby uruchamiał się automatycznie podczas uruchamiania:

sudo sysrc mysql_enable="yes"
sudo service mysql-server start

Zabezpiecz instalację serwera MariaDB:

sudo mysql_secure_installation

Po wyświetleniu monitu o utworzenie użytkownika MariaDB / MySQL rootwybierz „Y” (na tak), a następnie wprowadź bezpieczne roothasło. Po prostu odpowiedz „T” na wszystkie pozostałe pytania tak / nie, ponieważ domyślne sugestie są najbezpieczniejszymi opcjami.

Krok 6: Utwórz bazę danych dla ProcessWire CMS

Zaloguj się do powłoki MariaDB jako rootużytkownik MariaDB , uruchamiając następującą komendę:

sudo mysql -u root -p

Aby uzyskać dostęp do wiersza polecenia MariaDB, po prostu wprowadź roothasło MariaDB po wyświetleniu monitu.

Uruchom następujące zapytania, aby utworzyć bazę danych MariaDB i użytkownika bazy danych dla 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;

Jeśli wolisz, możesz zamienić nazwę bazy danych pw_dbi nazwę użytkownika na pw_usercoś bardziej według własnych upodobań. Upewnij się również, że zastąpiłeś „UltraSecurePassword” faktycznie bezpiecznym hasłem.

Krok 7: Zainstaluj pliki ProcessWire CMS

Zmień bieżący katalog roboczy na domyślny katalog internetowy:

cd /usr/local/www/apache24/data

Twój bieżący katalog roboczy powinien być: /usr/local/www/apache24/data. Możesz to sprawdzić za pomocą polecenia pwd(wydrukuj katalog roboczy):

pwd

Teraz użyj, wgetaby pobrać pakiet instalacyjny ProcessWire CMS:

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

Uwaga: Zdecydowanie powinieneś sprawdzić najnowszą wersję, odwiedzając stronę pobierania ProcessWire CMS .

Wyświetl bieżący katalog, aby sprawdzić, czy plik został pomyślnie pobrany:

ls -la

Usuń index.html:

sudo rm index.html

Teraz rozpakuj archiwum zip:

sudo unzip master.zip

Przenieś wszystkie pliki instalacyjne do głównego katalogu internetowego:

sudo mv processwire-master/* /usr/local/www/apache24/data

Zmień własność plików internetowych, aby uniknąć problemów z uprawnieniami:

sudo chown -R www:www * ./

Uruchom ponownie Apache ponownie:

sudo service apache24 restart

Krok 8: Zakończ instalację ProcessWire CMS

Nadszedł czas, aby odwiedzić adres IP swojej instancji serwera w przeglądarce lub jeśli już skonfigurowałeś ustawienia Vultr DNS (i dałeś mu wystarczająco dużo czasu na propagację), możesz po prostu odwiedzić swoją domenę.

Aby uzyskać dostęp do strony instalacji ProcessWire CMS, wprowadź adres IP instancji Vultr w pasku adresu przeglądarki, a następnie index.php:

http://YOUR_VULTR_IP_ADDRESS/install.php

Instalator ProcessWire CMS zawiera wiele opcji, dlatego oto kilka wskazówek, które pomogą Ci:

  1. Na stronie powitalnej instalacji ProcessWire CMS kliknij Get Startedprzycisk, aby rozpocząć proces instalacji.

  2. Teraz wybierz preferowany profil instalacyjny (lub witrynę demonstracyjną) i kliknij Continue.

  3. Zobaczysz Compatibility Checkstronę. Jeśli zobaczysz jakieś błędy, prawdopodobnie oznacza to brak niektórych modułów PHP lub problem z uprawnieniami, w przeciwnym razie możesz po prostu kliknąć Continue.

  4. Wprowadź następujące wartości na MySQL Database Settingsstronie:

    DB Name:            pw_db
    DB User:            pw_user
    DB Pass:            UltraSecurePassword
    DB Host:            localhost
    DB Port:            3306
    
  5. Możesz pozostawić File Permissionustawienia na wartościach domyślnych lub dostosować je, jeśli zrozumiesz implikacje.

  6. Możesz wpisać przyszłe nazwy hosta swojej witryny w odpowiedniej sekcji, lub możesz edytować site/config.phpplik później, jeśli wolisz.

  7. Kliknij, Continueaby skonfigurować bazę danych i zainstalować pliki CMS ProcessWire.

  8. Następnie wybierz preferowany Admin Theme.

  9. Możesz zmienić, Admin URLjeśli wolisz, lub możesz po prostu pozostawić domyślną wartość.

  10. Wpisz swoje, Admin Login Detailsjak pokazano poniżej:

    User (a-z 0-9):     <admin username>
    Password:           <admin password>
    Password (again):   <same admin password>
    Email Address:      <admin email address>
    
  11. Po wprowadzeniu wszystkich odpowiednich szczegółów możesz kliknąć, Continueaby zakończyć instalację ProcessWire.

  12. Po zakończeniu instalacji kliknij Login to Adminprzycisk, aby zalogować się w sekcji Administrator.

Możesz zobaczyć ostrzeżenie z napisem:

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

Możesz naprawić ten błąd, edytując site/config.phpplik:

sudo vi site/config.php

Dodaj odpowiednią wartość na końcu pliku:

setlocale(LC_ALL,'en_GB.utf8');

Jeśli nie możesz ustalić, jakiej wartości użyć, możesz znaleźć listę odpowiednich wartości dla konkretnej instancji serwera, uruchamiając localepolecenie:

locale -a

Nie zapomnij zapisać site/config.phppliku i wyjść z niego po zakończeniu edycji.

Ze względów bezpieczeństwa upewnij się, że zmieniłeś uprawnienia do site/config.phppliku:

sudo chmod 400 site/config.php

Uruchom ponownie Apache.

sudo service apache24 restart

Możesz rozpocząć dodawanie treści i konfigurację wyglądu swojej witryny. Zapoznaj się z doskonałą dokumentacją ProcessWire CMS, aby uzyskać więcej informacji na temat tworzenia i konfigurowania witryny.



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.