Cum se instalează Anchor CMS pe un VPS Fedora 26 LAMP
Folosind un sistem diferit? Anchor CMS este un motor de blog de sistem de gestionare a conținutului (CMS) super-simplu și extrem de ușor, gratuit și deschis
Meteor.js este un cadru JavaScript, open-source, scris cu Node.js în minte. Este popular datorită vizualizării sale de a construi aplicații web în JavaScript pur. Meteor încorporează suportul JavaScript frontal care rulează în browserul web, precum și JavaScript de back-end, care ar rula pe serverul gazdă. Se integrează foarte bine cu cadrele JavaScript front-end, precum React și Angular.js, precum și cu MongoDB, o populară bază de date NoSQL. Câteva motive importante pentru a alege Meteor.js sunt următoarele:
Meteor.js este un cadru full stack. Așadar, cu acesta, obțineți tot ce aveți nevoie vreodată: bază de date, front end, backend. Meteor face o treabă uimitoare de a lega totul împreună.
Viteză. Sistemul intuitiv de pachete Meteor vă oferă multe instrumente de care aveți nevoie pentru a vă perfecționa aplicația.
Are un sprijin bun din partea Meteor Developer Group, precum și a colaboratorilor care îl folosesc. Veți putea cu ușurință să vă dați seama de problemele pe care le aveți și să le rezolvați rapid.
În acest tutorial, vom realiza următoarele obiective pe Ubuntu 16.04:
Instalează Node.js
, runtime-ul nostru Javascript.
Instalați Meteor.js
.
Instalare MongoDB
, baza de date Meteor la alegere.
Instalați Apache
, proxy-ul nostru la alegere și configurați-ne domeniul, dacă este cazul.
Testează site-ul nostru web.
Configurați site-ul nostru pentru producție.
Mai întâi va trebui să instalați Node.js, care este interpretul nostru JavaScript și nucleul Meteor. Ne va permite să rulăm Meteor și alte aplicații Node.js pe care le putem avea în viitor. În această situație, vom instala Node.js 8. Pentru a începe descărcarea, pur și simplu executați următoarele în terminalul dvs.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Așteptați finalizarea descărcării și instalării.
În continuare, vom instala baza noastră de date: MongoDB. MongoDB este o bază de date gratuită, open-source pentru documente NoSQL, și baza de date Meteor la alegere. Folosește un format asemănător JSON pentru documentele sale, spre deosebire de tabelele structurate dintr-o bază de date tradițională SQL.
Importați cheia publică MongoDB folosită de APT
(Terminalul avansat de ambalare). Aceasta permite APT să verifice pachetul; în acest caz, MongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Creați fișierul de listă necesar pentru Ubuntu 16.04.
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
Începeți instalarea MongoDB și așteptați terminarea instalării.
sudo apt update && sudo apt install mongodb-org -y
Deschideți serviciul systemd pentru editare.
sudo nano /etc/systemd/system/mongodb.service
Copiați și lipiți următoarele pentru a finaliza serviciul systemd.
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
Utilizați " Control-O
" pentru a salva și " Control-X
" pentru a ieși.
Rulați serviciul de sistem MongoDB tastând sudo systemctl start mongodb
terminalul.
Pentru a verifica dacă a început cu succes, tastați următoarele.
sudo systemctl status mongodb
Veți vedea că serviciul este activ.
În continuare, vom instala Apache. Apache este un software de server web gratuit și open source, care funcționează și ca proxy invers, ceea ce vom folosi în acest tutorial. Este necesar un proxy invers pentru a lega aplicația Meteor.js la port 80
. Node.js împiedică rularea aplicațiilor pe acel port fără acces root. Apache rulează la fel de root
automat, precum și se leagă port 80
, așa că nu va trebui să ne facem griji despre el atunci când va veni timpul să rulăm site-ul nostru.
Instalați Apache.
sudo apt update && sudo apt install apache2
Pentru a permite accesul la porturi web externe cum ar fi port 80
, trebuie să configurăm firewall-ul pentru Apache. Facem acest lucru prin UFW
(firewall necomplicat).
sudo ufw allow 'Apache Full'
Acest lucru va permite accesul la Apache Full
profilul. Acest lucru ne oferă traficul de intrare port 80
, la care se execută aplicația noastră.
Acum, vom instala cadrul nostru web: Meteor.js. Vom folosi un script bash simplu furnizat de echipa Meteor pentru instalarea acestuia.
curl https://install.meteor.com/ | sh
Așteptați terminarea instalării. Practic, ceea ce face scriptul este că descarcă Meteor de pe site-ul oficial și îl instalează la nivel global, astfel încât îl putem folosi de oriunde. Odată terminat, putem crea directorul nostru de aplicații. Meteor are un instrument util pentru noi, pentru a face acest lucru, numit meteor create
. Pentru a crea directorul aplicației, tastați următoarele.
meteor create <projectname>
Dosarul va fi creat cu numele specificat ( <projectname>
).
Acum că avem directorul nostru de aplicații configurat, putem continua cu configurarea proxy-ului invers. Apache utilizează un modul numit mod_proxy
, care implementează un proxy pentru Apache.
sudo apt-get install libapache2-mod-proxy-html libxml2-dev -y
Acest lucru va instala modulul și îl va face disponibil pentru utilizarea lui Apache.
În continuare, va trebui să activăm toate modulele necesare pe care Apache trebuie să le ruleze. Vom face acest lucru cu a2enmod
un instrument care permite module pentru Apache. Aceste module ne vor permite să profităm de proxy-ul invers. Pur și simplu introduceți aceste comenzi în terminalul dvs.
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html
După aceea, va trebui să dezactivăm site-ul Apache implicit de la pornire, astfel încât să putem începe propriul nostru. În caz contrar, aplicația implicită Apache va trece peste a noastră. Pentru a dezactiva site-ul implicit, pur și simplu executați următoarele.
sudo a2dissite 000-default
Acum vom crea fișierul nostru gazdă virtual. Pentru a face asta, trebuie doar să deschideți un editor de text.
sudo nano /etc/apache2/sites-available/<projectname>
Copiați și lipiți următoarele.
<VirtualHost *:80>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ProxyPreserveHost On
# Servers to proxy the connection, or
# List of application servers Usage
ProxyPass / http://0.0.0.0:3000/
ServerName localhost
</VirtualHost>
VirtualHost *:80
: Îi spune lui Apache să se atașeze la portul 80, ceea ce dorim pentru aplicația noastră web.
ProxyPass
: Adresa IP a site-ului pe care doriți să îl redirecționați către proxy invers. Aceasta va fi cel mai probabil IP-ul VPS
ServerName
: Numele serverului dvs. (de obicei numele implicit localhost
).
După ce ați terminat configurarea setărilor necesare, folosiți " Control-O
" pentru a salva și " Control-X
" pentru a ieși.
Pentru a testa și a vă asigura că funcționează site-ul web, introduceți următoarele în directorul de proiect.
meteor
Veți vedea următoarea ieșire care arată că site-ul dvs. a început cu succes.
=> App running at: http://localhost:3000/
Rețineți că Meteor, în mod implicit, ascultă port 3000
.
Pentru a ne asigura că aplicația noastră poate rămâne în funcțiune, vom folosi un serviciu systemd. Similar cu ceea ce am făcut mai sus cu MongoDB, acest serviciu de sistem se va asigura că site-ul nostru va porni de fiecare dată când sistemul nostru începe și va rămâne în funcțiune. De asemenea, va reporni aplicația noastră, în cazul în care se va bloca din orice motiv. Pentru a configura serviciul nostru de sistem, introduceți următoarele în terminalul dvs.
sudo nano /etc/systemd/system/<projectname>.service
Iată cum doriți să arate fișierul dvs.
[Service]
WorkingDirectory=/home/<yourusername>/<projectname>
ExecStart=/usr/local/bin/meteor --production
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=<projectName>
User=<yourusername>
Environment=NODE_ENV=production
Environment=PWD=/home/<yourusername>/<projectname>
Environment=PORT=3000
Environment=HTTP_FORWARDED_COUNT=1
Notă : Nu uitați să înlocuiți projectname
cu numele proiectului și yourusername
cu numele de utilizator al VPS.
Iată câteva linii cheie pentru care trebuie să ții cont.
WorkingDirectory
: Directorul aplicației dvs.
Restart
: Dacă reporniți sau nu aplicarea acesteia se oprește din orice motiv.
User
: Nume de utilizator.
Environment=PWD
: Identic cu WorkingDirectory
.
Environment=PORT
: Portul pe care rulează aplicația. Implicit este 3000
.
Salvați și închideți fișierul.
Acum, vom activa și porni serviciul.
sudo systemctl enable <projectname>.service
Unde <projectname>
este numele fișierului de serviciu pe care l-am creat.
Apoi, vom începe serviciul.
sudo systemctl start <projectname>.service
Aplicația dvs. va începe. Pentru a verifica dacă s-a lansat, executați doar următoarele.
sudo systemctl status <projectname>
Veți vedea că este activ, verificând dacă serviciul a început cu succes.
În continuare, vom consulta site-ul nostru web. În browserul dvs. web la alegere, navigați la adresa dvs. IP.
http://your-server-ip/
Veți vedea ecranul de eșantion Meteor, verificând că ați făcut totul corect.
Acum că am început aplicația, va trebui să o gestionăm.
sudo systemctl restart <projectname>
sudo systemctl stop <projectname>
sudo systemctl status <projectname>
journalctl -u <projectname>
Ați configurat cu succes MongoDB, Apache și Meteor și ați creat un server web Meteor.js pentru producție. Acum, restul ține de tine, pentru a proiecta site-ul dvs. web în partea frontală și în partea din spate. Aveți acces la MongoDB pentru a stoca orice date de care aveți nevoie și Node.js, care oferă o varietate de module disponibile prin Node Package Manager ( NPM
) pentru a vă consolida și mai mult backend-ul. Pentru mai multe documentații, nu ezitați să vizitați site-ul Meteor , unde puteți afla în continuare cum puteți personaliza site-ul dvs. după bunul plac. De asemenea, vă puteți referi la documentația MongoDB , când aveți de-a face cu operațiuni ale bazei de date.
Folosind un sistem diferit? Anchor CMS este un motor de blog de sistem de gestionare a conținutului (CMS) super-simplu și extrem de ușor, gratuit și deschis
NFS este un sistem de fișiere bazat pe rețea care permite computerelor să acceseze fișiere într-o rețea de calculatoare. Acest ghid explică modul în care puteți expune folderele peste NF
TeamTalk este un sistem de conferințe care permite utilizatorilor să aibă conversații audio / video de înaltă calitate, chat de text, transfer de fișiere și partajare ecrane. Este
Vultr oferă o caracteristică care vă permite să preinstalați cheile SSH la crearea unei noi instanțe. Acest lucru vă permite să accesați utilizatorul root al serverelor, totuși
Ranger este un manager de fișiere bazat pe linia de comandă cu legături de cheie VI. Oferă o interfață de blestem minimalistă și frumoasă, cu o vedere asupra ierarhiei de directoare
Folosind un sistem diferit? Redmine este un instrument gratuit și deschis de gestionare a proiectelor bazat pe web. Este scris în Ruby on Rails și acceptă mai multe baze de date
Introducere RethinkDB este o bază de date NoSQL care stochează date sub formă de documente JSON. Are un limbaj de interogare super intuitiv și are funcții disponibile în mod obișnuit
Folosind un sistem diferit? Brotli este o nouă metodă de compresie cu un raport de compresie mai bun decât GZIP. Codul sursă este găzduit public pe acest Githu
În anumite ocazii, este posibil ca un administrator de sistem să aibă nevoie să creeze un cont de utilizator și să restricționeze accesul acestora la gestionarea propriilor fișiere prin sFTP, dar nu b
Introducere MySQL are o caracteristică excelentă cunoscută sub numele de vizualizări. Vizualizările sunt interogări stocate. Gândiți-vă la ele ca la un alias pentru o întrebare altfel lungă. În acest ghid,
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol.) Acces Sudo. Comenzile care trebuie rulate ca root sunt prefixate de #. Th
Permiterea autentificării root pe SSH este de obicei considerată o practică slabă de securitate în întreaga industrie tehnologică. În schimb, puteți efectua administrativ sensibil
Folosind un sistem diferit? Seafile (versiunea comunității) este o soluție gratuită și deschisă de sincronizare și partajare a fișierelor, care este similară cu ownCloud. De-a lungul spiritului
Folosind un sistem diferit? NGINX poate fi utilizat ca server HTTP / HTTPS, server proxy invers, server proxy de poștă, echilibrator de sarcină, terminator TLS sau cachin
Folosind un sistem diferit? Thelia este un instrument open source pentru crearea de site-uri web pentru e-business și gestionarea conținutului online scris în PHP. Codul sursă Thelia i
Folosind un sistem diferit? DokuWiki este un program wiki open source scris în PHP care nu necesită o bază de date. Stochează date în fișiere text. DokuWik
Acest articol vă va învăța cum să configurați o închisoare chroot pe Debian. Presupun că utilizați Debian 7.x. Dacă executați Debian 6 sau 8, acest lucru poate funcționa, bine
Introducere Un mod ușor de a configura un server VPN pe Debian este cu PiVPN. PiVPN este un instalator și un pachet pentru OpenVPN. Creează comenzi simple pentru tine
Folosind un sistem diferit? Chamilo este un sistem gratuit și deschis de management al învățării (LMS), care este utilizat pe scară largă pentru educația online și colaborarea în echipă
EasyEngine (ee) este un instrument Python care vă permite să gestionați ușor și automat site-urile Wordpress de pe Nginx. Folosind EasyEngine, nu va trebui să dați
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.
Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.
Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.
Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.
CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?
Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.
Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!
Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.
Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe