Jak zainstalować Anchor CMS na CentOS 7 LAMP VPS
Używasz innego systemu? Anchor CMS to bardzo prosty i niezwykle lekki, darmowy i otwarty system zarządzania treścią (CMS) Blog Engine, który
W tym samouczku będziemy konfigurować serwer WWW z odwrotnym proxy. CMS, którego będziemy używać, to Keystone.js, dobrze znany framework aplikacji internetowych oparty na Express.js. Odwrotnym proxy, którego będziemy używać, jest Nginx, który jest bezpłatnym i otwartym źródłem zwrotnego proxy, a także serwerem HTTP. Bazą danych, z której będziemy korzystać, jest MongoDB, baza danych dokumentów NoSQL. Będzie to wymagać posiadania domeny z ustawionymi rekordami. Jeśli nie masz tego zestawu, zajmij się tym i wróć do tego samouczka.
Najpierw zainstalujemy Node.js, który jest interpreterem Javascript opartym na silniku Javascript Chrome V8.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
Następnie zainstalujemy Nginx, nasze odwrotne proxy.
sudo apt update
sudo apt install nginx
Spowoduje to zaktualizowanie list pakietów i zainstalowanie Nginx. Po zakończeniu instalacji skonfigurujemy nasz projekt węzła.
Utwórz nasz projekt węzła. Aby to zrobić, po prostu utwórz nowy folder.
mkdir website
Następnie utworzymy nasz package.json
plik. Aby to zrobić, po prostu uruchom npm init
terminal, wypełnij pola i odpowiedz „ yes
”, aby potwierdzić. Po utworzeniu package.json
pliku zainstalujemy następujące moduły węzłów.
sudo npm install -g generator-keystone
sudo npm install -g yo
Po zakończeniu pobierania uruchom następujące czynności.
yo keystone
Wypełnij wymagane pola. Będzie on poprosi o project name
The template engine
, email
na panelu sterowania, i tak dalej. Jeśli nie wiesz, co wybrać, ustawienia domyślne będą w porządku. Po skonfigurowaniu konfiguracji trapezu możemy przetestować, czy nasz serwer działa, pisząc, node keystone
aby uruchomić aplikację. Domyślnie aplikacja będzie działać localhost
na porcie 3000
. Pamiętaj, że jeśli nie masz zainstalowanego MongoDB, baza danych nie będzie od razu dostępna. Możesz dowiedzieć się, jak zainstalować go później w samouczku.
Oto podstawowy układ katalogu dla Keystone.js:
/lib
- W tym miejscu będziesz przechowywać swoje niestandardowe biblioteki i inny kod.
/models
- W tym miejscu będziesz przechowywać modele baz danych aplikacji. KeystoneJS wykorzystuje MongoDB jako dostawcę bazy danych.
/public
- W tym miejscu będą przechowywane twoje pliki statyczne (CSS, JS, obrazy itd.).
/routes/api
- W tym miejscu będą przechowywane kontrolery API Twojej aplikacji.
/routes.views
- Tutaj będą przechowywane kontrolery widoku aplikacji.
/templates
- W tym miejscu będą przechowywane wszystkie pliki szablonów aplikacji.
/updates
- W tym miejscu będą przechowywane twoje skrypty migracji.
package.json
- To jest twój plik konfiguracyjny npm, który wygenerował dla nas generator.
keystone.js
- Nasz główny plik startowy, uruchamiamy go podczas uruchamiania strony internetowej.
Jak wspomniano wcześniej, naszą bazą danych, z której będziemy korzystać, jest MongoDB, która jest niezawodną bazą danych zorientowaną na dokumenty NoSQL. Jeśli masz już zainstalowany MongoDB, możesz pominąć tę sekcję. Jeśli nie, oto jak zainstalować go na Ubuntu 16.04.
Zaimportuj klucz publiczny używany dla pakietu mongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Utwórz plik listy użyty do zainstalowania pakietu.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Zaktualizuj listy pakietów za pomocą apt
.
sudo apt update
Na koniec zainstaluj MongoDB.
sudo apt install mongodb-org -y
Po zakończeniu instalacji uruchom MongoDB.
sudo service mongod start
Spowoduje to uruchomienie procesu MongoDB na porcie 27017
.
MongoDB będzie używany w całej aplikacji i będzie wykorzystywany do przechowywania informacji, które wykorzystujemy do naszych modeli, na przykład User
modelu. Keystone używa go jako wybranej bazy danych, a obecnie nie można używać innych dostawców baz danych.
Teraz nadszedł czas, aby zainstalować PM2 (Process Manager 2.) PM2 to menedżer procesów dla aplikacji Node.js, w postaci modułu npm. Zapewnia łatwy sposób zarządzania aplikacjami i uruchamiania ich w tle. Ponieważ jest to w NPM, wszystko, co musimy zrobić, aby go zainstalować, uruchom następujące.
sudo npm install pm2 -g
To mówi npm, aby zainstalował go globalnie, dzięki czemu możemy go używać w dowolnym miejscu w naszym systemie.
Wcześniej korzystaliśmy z naszej aplikacji internetowej node keystone
. Z PM2 jest trochę inaczej. Teraz uruchamiamy naszą aplikację węzła w następujący sposób.
pm2 start keystone.js
Spowoduje to dodanie naszej aplikacji PM2 do naszej listy procesów, a pojawi się małe okno, dzięki któremu zobaczysz, że jest on rzeczywiście online. Zwróć uwagę na pole oznaczone id
dla twojego procesu. Trzymaj się blisko, ponieważ będziemy się do tego odwoływać później.
Aby wyświetlić dzienniki aplikacji.
pm2 logs [id]
Na przykład, pm2 logs 0
jeśli jest to Twoja pierwsza aplikacja PM2.
Aby zatrzymać aplikację internetową w dowolnym momencie.
pm2 stop [id]
Aby całkowicie usunąć aplikację.
pm2 delete [id]
PM2 ma nawet pulpit nawigacyjny monitorowania, jeśli chcesz zobaczyć podstawowe statystyki swojej aplikacji i możesz uzyskać do niego dostęp dzięki temu.
pm2 monit
Spowoduje to wyświetlenie podstawowych informacji, takich jak użycie pamięci RAM, użycie procesora i czas pracy.
Świetną funkcją, którą oferuje PM2 jest watching
. Zasadniczo oglądanie odbywa się wtedy, gdy PM2 automatycznie wykrywa zmiany dowolnego pliku w tym samym katalogu co plik początkowy i automatycznie uruchomi ponownie aplikację. Aby ją włączyć, po prostu uruchom ponownie aplikację, ale przekaż jej flagę zegarka.
pm2 restart [id] --watch
Aby wyłączyć oglądanie po włączeniu, wystarczy ponownie uruchomić to samo polecenie, a oglądanie zostanie wyłączone.
W tym samouczku przestaniemy oglądać.
Upewnij się, że masz zainstalowany Nginx. Jeśli z jakiegoś powodu tak nie jest, zapoznaj się z powyższymi krokami.
Dostosuj ustawienia zapory. Na Ubuntu ufw
jest oficjalnym firewallem. Domyślnie połączenia są blokowane na porcie 80
. Musimy dodać wyjątek dla Nginx na porcie 80
, na którym będzie działała nasza aplikacja internetowa.
sudo ufw allow 'Nginx HTTP'
Sprawdź, czy Twój serwer Nginx jest uruchomiony.
systemctl status nginx
W Active
sekcji, jeśli widzisz active (running)
, wszystko jest gotowe. Jeśli nie, możesz spróbować ponownie uruchomić usługę.
systemctl restart nginx
Usuń domyślny plik konfiguracyjny Nginx.
sudo rm /etc/nginx/sites-available/default
Utwórz nowy i po prostu zadzwoń node
.
sudo nano /etc/nginx/sites-available/node
Wklej następujące elementy do pliku i zastąp example.com
je domeną swojej witryny.
listen 80;
server_name example.com;
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass "http://127.0.0.1:3000";
}
}
Pamiętaj, że proxy_pass
oznacza adres IP, na którym działa aplikacja Keystone lokalnie, czyli localhost
na porcie 3000
. listen 80
to port, do którego chcemy skierować aplikację, którym w tym przypadku jest port 80
.
Następnie musimy utworzyć dowiązanie symboliczne lub dowiązanie symboliczne do folderu o nazwie sites-enabled
. Różnica między sites-enabled
i sites-available
polega na tym, że sites-enabled
jest w rzeczywistości ładowany przez Nginx.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Teraz twój plik konfiguracyjny sites-available
będzie gotowy do użycia i zostanie załadowany z sites-enabled
. Aby zastosować konfigurację, aby zadziałała, po prostu uruchom ponownie Nginx.
sudo systemctl restart nginx
Na koniec zrestartuj aplikację PM2
pm2 restart [id]
Teraz możesz przejść do swojej domeny w przeglądarce, a zobaczysz Welcome to Keystone
ekran z panelem do zalogowania się.
Jeśli go widzisz, oznacza to, że pomyślnie skonfigurowałeś produkcyjny serwer WWW Node.js. Jeśli nie, oznacza to, że mógłeś zrobić krok niepoprawnie i być może zechcesz wrócić i uważnie śledzić każdy krok.
Możesz dowiedzieć się więcej o Nginx, odwiedzając ich stronę internetową .
Mam nadzieję, że podobał ci się ten samouczek i mam nadzieję, że pomógł ci on skonfigurować własny serwer WWW do produkcji na Vultr VPS.
Używasz innego systemu? Anchor CMS to bardzo prosty i niezwykle lekki, darmowy i otwarty system zarządzania treścią (CMS) Blog Engine, który
Używasz innego systemu? TextPattern CMS 4.6.2 to prosty, elastyczny, bezpłatny i otwarty system zarządzania treścią (CMS), który umożliwia projektantom stron internetowych
Używasz innego systemu? BlogoText CMS to prosty i lekki, bezpłatny i otwarty system zarządzania treścią (CMS) oraz minimalistyczny silnik blogów
Bolt to open source CMS napisany w PHP. Kod źródłowy Bolts jest hostowany na GitHub. Ten przewodnik pokaże Ci, jak zainstalować Bolt CMS na nowym CentOS 7 Vult
Używasz innego systemu? PyroCMS to open source CMS napisany w PHP. Kod źródłowy PyroCMS jest hostowany na GitHub. W tym przewodniku również przejdź przez entir
Używasz innego systemu? Tło CMS 1.8.0 to prosty i elastyczny, przyjazny dla urządzeń mobilnych, bezpłatny i otwarty system zarządzania treścią (CMS), który pozwala nam
Używasz innego systemu? Pagekit 1.0 CMS to piękny, modułowy, rozszerzalny i lekki, bezpłatny i otwarty system zarządzania treścią (CMS) z
Używasz innego systemu? Anchor CMS to bardzo prosty i niezwykle lekki, darmowy i otwarty system zarządzania treścią (CMS) Blog Engine, który
Używasz innego systemu? Subrion 4.1 CMS to potężny i elastyczny system zarządzania treścią typu open source (CMS), który zapewnia intuicyjny i przejrzysty kontekst
Używasz innego systemu? TextPattern CMS 4.6.2 to prosty, elastyczny, bezpłatny i otwarty system zarządzania treścią (CMS), który umożliwia projektantom stron internetowych
Używasz innego systemu? 1.0 października CMS to prosty i niezawodny, bezpłatny i otwarty system zarządzania treścią (CMS) oparty na platformie Laravel
Używasz innego systemu? DotCMS to otwarty system zarządzania treścią klasy korporacyjnej napisany w Javie. Zawiera prawie każdą wymaganą funkcję t
Używasz innego systemu? Subrion 4.1 CMS to potężny i elastyczny system zarządzania treścią typu open source (CMS), który zapewnia intuicyjny i przejrzysty kontekst
Używasz innego systemu? WonderCMS jest otwartym, szybkim i małym, płaskim plikiem CMS napisanym w PHP. Kod źródłowy WonderCMS jest hostowany na Github. Ten przewodnik wil
Używasz innego systemu? Wprowadzenie Tiki Wiki CMS Groupware, znany również jako Tiki, to darmowy system zarządzania treścią typu wiki typu open source. Funkcja Tikis
Używasz innego systemu? Wprowadzenie BoltWire to darmowy i lekki system zarządzania treścią napisany w języku PHP. W porównaniu do większości innych menedżerów treści
ApostropheCMS to nowoczesny system zarządzania treścią zbudowany na NodeJS z naciskiem na rozszerzalne narzędzia do edycji kontekstowej. W tym samouczku nauczysz się ho
Używasz innego systemu? BigTree CMS 4.2 to szybki i lekki, bezpłatny i otwarty system zarządzania treścią dla przedsiębiorstw (CMS) z rozbudowanym
Używasz innego systemu? Microweber to otwarty system CMS typu „przeciągnij i upuść” oraz sklep internetowy. Kod źródłowy Microweber jest hostowany na GitHub. Ten przewodnik pokaże ci yo
Używasz innego systemu? Directus 6.4 CMS to potężny i elastyczny, bezpłatny i otwarty system zarządzania treścią bez głowy (CMS), który zapewnia programistom
Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.
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
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+
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.
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…
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ą
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.
Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.
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.