Fuel CMS installeren op Ubuntu 16.04 LTS
Gebruikt u een ander systeem? Fuel CMS is een op CodeIgniter gebaseerd contentmanagementsysteem. De broncode wordt gehost op GitHub. Deze gids laat zien hoe t
In deze tutorial gaan we een webserver opzetten met een reverse proxy. Het CMS dat we zullen gebruiken is Keystone.js, een bekend framework voor webtoepassingen gebaseerd op Express.js. De reverse proxy die we zullen gebruiken is Nginx, een gratis en open source reverse proxy, evenals een HTTP-server. De database die we zullen gebruiken is MongoDB, een NoSQL-documentendatabase. Dit vereist dat u een domein heeft met records ingesteld. Als je die set niet hebt, ga je gang en zorg je ervoor en kom terug naar deze tutorial.
Eerst installeren we Node.js, een Javascript-interpreter op basis van de Chrome V8 Javascript-engine.
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
Vervolgens installeren we Nginx, onze reverse proxy.
sudo apt update
sudo apt install nginx
Hiermee worden de pakketlijsten bijgewerkt en Nginx geïnstalleerd. Zodra de installatie is voltooid, zullen we ons knooppuntproject opzetten.
Maak ons knooppuntproject. Om dat te doen, maakt u gewoon een nieuwe map.
mkdir website
Vervolgens maken we ons package.json
bestand aan. Om dat te doen, draait u gewoon npm init
in uw terminal, vult u de velden in en antwoordt u " yes
" om te bevestigen. Nadat u het package.json
bestand hebt gemaakt , installeren we de volgende knooppuntmodules.
sudo npm install -g generator-keystone
sudo npm install -g yo
Zodra deze zijn gedownload, voert u het volgende uit.
yo keystone
Vul de verplichte velden in. Het zal u vragen naar de project name
, de template engine
, email
voor de controle paneel, en ga zo maar door. Als u niet weet wat u moet selecteren, zijn de standaardinstellingen prima. Nadat u uw keystone-configuratie hebt geconfigureerd, kunnen we testen of onze server actief is door te typen node keystone
om uw applicatie te starten. Standaard wordt uw applicatie uitgevoerd localhost
op poort 3000
. Merk op dat als u MongoDB niet hebt geïnstalleerd, er niet meteen een database voor u beschikbaar zal zijn. U kunt later in de zelfstudie leren hoe u het kunt installeren.
Hier is de basismaplay-out voor Keystone.js:
/lib
- Hier slaat u uw aangepaste bibliotheken en andere code op.
/models
- Hier slaat u de databasemodellen van uw toepassing op. KeystoneJS gebruikt MongoDB als databaseprovider.
/public
- Hier worden uw statische bestanden (CSS, JS, afbeeldingen, enzovoort) opgeslagen.
/routes/api
- Hier worden de API-controllers van uw applicatie opgeslagen.
/routes.views
- Application view-controllers worden hier opgeslagen.
/templates
- Hier worden alle sjabloonbestanden van uw applicatie opgeslagen.
/updates
- Hier worden uw migratiescripts opgeslagen.
package.json
- Dit is uw npm-configuratiebestand dat de generator voor ons heeft gegenereerd.
keystone.js
- Ons belangrijkste startbestand, we voeren dit uit bij het opstarten van de website.
Zoals eerder vermeld, is onze database die we zullen gebruiken MongoDB, een betrouwbare NoSQL, documentgerichte database. Als je MongoDB al hebt geïnstalleerd, kun je deze sectie overslaan. Zo niet, dan kunt u het als volgt installeren op Ubuntu 16.04.
Importeer de openbare sleutel die wordt gebruikt voor het mongoDB-pakket.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Maak het lijstbestand dat wordt gebruikt om het pakket te installeren.
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
Update uw pakketlijsten met apt
.
sudo apt update
Installeer ten slotte MongoDB.
sudo apt install mongodb-org -y
Start MongoDB wanneer deze installatie is voltooid.
sudo service mongod start
Hiermee wordt het MongoDB-proces op de poort gestart 27017
.
MongoDB zal in de hele applicatie worden gebruikt en zal worden gebruikt om informatie op te slaan die we voor onze modellen gebruiken, bijvoorbeeld een User
model. Keystone gebruikt het als database naar keuze en op dit moment kunt u geen andere database-leveranciers gebruiken.
Nu is het tijd om PM2 (Process Manager 2.) te installeren PM2 is een procesmanager voor Node.js-applicaties, in de vorm van een npm-module. Het biedt een gemakkelijke manier om uw applicaties te beheren en op de achtergrond uit te voeren. Omdat het in NPM is, hoeven we alleen het volgende te installeren.
sudo npm install pm2 -g
Dit vertelt npm om het wereldwijd te installeren, zodat we het overal in ons systeem kunnen gebruiken.
Eerder hadden we onze webapplicatie uitgevoerd met node keystone
. Met PM2 is het een beetje anders. We voeren nu onze knooppunt-app uit met het volgende.
pm2 start keystone.js
Hiermee wordt onze PM2-toepassing toegevoegd aan onze proceslijst en wordt er een klein vakje weergegeven zodat u kunt zien dat het inderdaad online is. Let op het vak met het label id
voor uw proces. Houd dit in de buurt, daar zullen we later veel verwijzingen naar maken.
Om de logs voor uw applicatie te zien.
pm2 logs [id]
Bijvoorbeeld, pm2 logs 0
als dit je eerste PM2 applicatie.
Om uw webapplicatie op elk moment te stoppen.
pm2 stop [id]
Om uw aanvraag volledig te verwijderen.
pm2 delete [id]
PM2 heeft zelfs een bewakingsdashboard als u enkele basisstatistieken voor uw toepassing wilt zien, en u kunt hier toegang toe krijgen.
pm2 monit
Dit toont wat basisinformatie zoals RAM-gebruik, CPU-gebruik en uptime.
Een geweldige functie die PM2 biedt, is watching
. In essentie is kijken wanneer PM2 automatisch wijzigingen detecteert in een van de bestanden in dezelfde map als uw startbestand, en het zal uw toepassing automatisch opnieuw opstarten. Om het in te schakelen, start u eenvoudig uw applicatie opnieuw, maar geeft u het een horlogevlag door.
pm2 restart [id] --watch
Om het kijken uit te schakelen nadat het is ingeschakeld, voert u gewoon dezelfde opdracht opnieuw uit en wordt kijken uitgeschakeld.
In deze tutorial laten we het kijken af.
Zorg ervoor dat je Nginx hebt geïnstalleerd. Als dat om een of andere reden niet zo is, raadpleeg dan de bovenstaande stappen.
Pas uw firewall-instellingen aan. Op Ubuntu ufw
is de officiële firewall. Standaard worden verbindingen geblokkeerd op poort 80
. We moeten een uitzondering toevoegen voor Nginx on port 80
, waarop onze webapplicatie zal draaien.
sudo ufw allow 'Nginx HTTP'
Controleer of uw Nginx-server actief is.
systemctl status nginx
Active
Als je onder de sectie ziet active (running)
, ben je helemaal klaar. Zo niet, dan kunt u proberen de service opnieuw op te starten.
systemctl restart nginx
Verwijder het standaard Nginx-configuratiebestand.
sudo rm /etc/nginx/sites-available/default
Maak een nieuwe en noem het gewoon node
.
sudo nano /etc/nginx/sites-available/node
Plak het volgende in het bestand en vervang het example.com
door uw websitedomein.
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";
}
}
Merk op dat dit proxy_pass
het IP-adres aangeeft waarop onze Keystone-app lokaal draait, die zich localhost
op de poort bevindt 3000
. listen 80
is de poort waarnaar we de app willen laten verwijzen, in dit geval poort 80
.
Vervolgens moeten we een symlink of symbolische link naar een map met de naam maken sites-enabled
. Het verschil tussen sites-enabled
en sites-available
is dat het sites-enabled
daadwerkelijk door Nginx wordt geladen.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Nu is uw configuratiebestand sites-available
klaar voor gebruik en wordt het geladen vanaf sites-enabled
. Om de configuratie toe te passen zodat deze effect heeft, start u Nginx opnieuw op.
sudo systemctl restart nginx
Start ten slotte uw PM2-toepassing opnieuw op
pm2 restart [id]
Nu kunt u in een browser naar uw domein navigeren en ziet u een Welcome to Keystone
scherm met een paneel om in te loggen.
Als je het ziet, dan heb je met succes een Node.js-productiewebserver opgezet. Zo niet, dan heeft u misschien een stap verkeerd gedaan en wilt u misschien teruggaan en elke stap zorgvuldig volgen.
U kunt meer over Nginx leren door hun website te bezoeken .
Ik hoop dat je deze tutorial leuk vond, en ik hoop dat dit je heeft geholpen bij het opzetten van je eigen webserver voor productie op je Vultr VPS.
Gebruikt u een ander systeem? Fuel CMS is een op CodeIgniter gebaseerd contentmanagementsysteem. De broncode wordt gehost op GitHub. Deze gids laat zien hoe t
Gebruikt u een ander systeem? Neos is een Content Application Platform met een CMS en een applicatieframework als kern. Deze gids laat u zien hoe u kunt installeren
Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen
Gebruikt u een ander systeem? Subrion 4.1 CMS is een krachtig en flexibel open source Content Management Systeem (CMS) dat een intuïtieve en duidelijke inhoud
Gebruikt u een ander systeem? BigTree CMS 4.2 is een snel en lichtgewicht, gratis en open source, enterprise-grade content management systeem (CMS) met uitgebreide en
Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen
Gebruikt u een ander systeem? WonderCMS is een open source, snel en klein, plat bestand CMS geschreven in PHP. WonderCMS-broncode wordt gehost op Github. Deze gids zal
Gebruikt u een ander systeem? Neos is een Content Application Platform met een CMS en een applicatieframework als kern. Deze gids laat u zien hoe u kunt installeren
Gebruikt u een ander systeem? Alfresco Community Edition is een open source-versie van de Alfresco Content Services. Het is geschreven in Java en gebruikt PostgreSQL t
Gebruikt u een ander systeem? BigTree CMS 4.2 is een snel en lichtgewicht, gratis en open source, enterprise-grade Content Management System (CMS) met uitgebreide en
Gebruikt u een ander systeem? Omeka Classic 2.4 CMS is een gratis en open source digitaal publicatieplatform en Content Management System (CMS) voor het delen van digita
Gebruikt u een ander systeem? Craft CMS is een open source CMS geschreven in PHP. De broncode van Craft CMS wordt gehost op GitHub. Deze gids laat u zien hoe u kunt installeren
Gebruikt u een ander systeem? ImpressPages CMS 5.0 is een eenvoudig en effectief, gratis en open source, gebruiksvriendelijk, op MVC gebaseerd Content Management Systeem (CMS)
Gebruikt u een ander systeem? Automad is een open source file-based content management systeem (CMS) en template engine geschreven in PHP. De Automad-broncode i
Gebruikt u een ander systeem? Directus 6.4 CMS is een krachtig en flexibel, gratis en open source Headless Content Management System (CMS) dat ontwikkelaars voorziet
Gebruikt u een ander systeem? ProcessWire CMS 3.0 is een eenvoudig, flexibel en krachtig, gratis en open source Content Management System (CMS). ProcessWire CMS 3.
Gebruikt u een ander systeem? TYPO3 is een gratis en open source content management systeem voor bedrijven. Het is geschreven in PHP en gebruikt MySQL om de gegevens op te slaan. TYPFOUT
Gebruikt u een ander systeem? Backdrop CMS 1.8.0 is een eenvoudig en flexibel, mobielvriendelijk, gratis en open source Content Management System (CMS) waarmee we
Gebruikt u een ander systeem? Anchor is een lichtgewicht open source blog CMS geschreven in PHP. De broncode van Anchors wordt gehost op GitHub. Deze gids laat je zien ho
Gebruikt u een ander systeem? Microweber is een open source CMS voor slepen en neerzetten en een online winkel. De broncode van Microweber wordt gehost op GitHub. Deze gids zal je laten zien
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.