Instaloni Plesk në CentOS 7
Përdorimi i një sistemi të ndryshëm? Plesk është një panel kontrolli i pronarit të hostit në internet që lejon përdoruesit të administrojnë faqet e tyre të internetit personale dhe/ose të klientëve, bazat e të dhënave
Në këtë tutorial, do të mësoni se si të konfiguroni një API të plotë RESTful, i cili do t'i shërbejë kërkesave HTTP duke përdorur Node.js dhe Express duke e bërë proksimin e kundërt me NGINX, në Ubuntu 16.04 LTS. Ne do të përdorim një aplikacion të quajtur Postman, një mjet shumë i njohur i zhvillimit të API, për të testuar API-në tonë dhe për t'u siguruar që është plotësisht funksionale dhe funksionon siç duhet. Node.js është një kornizë e shpejtë JavaScript ndër-platformë e bazuar në motorin V8 të Chrome. Përdoret si në aplikacionet e desktopit ashtu edhe në serverët dhe është i famshëm për trajtimin e ciklit të ngjarjeve me një fije të vetme. Ne do të përdorim Node.js si bazë për API-në tonë RESTful, të bashkuar me Express.js, kornizën tonë të aplikacionit në ueb të krijuar për Node.js. Express.js lëshohet si softuer i lirë dhe i hapur. Express është nga ana e serverit, i shkruar në JavaScript dhe është krijuar për ndërtimin e API-ve, gjë që e bën atë të përsosur për projektin tonë. Nga ana tjetër, Postman është një klient shumë i fuqishëm HTTP, me zhvillimin e API-së në mendje. Ai përmban të gjitha mjetet që mund të dëshironi për zhvillimin e API.
Së pari, ju dëshironi të shkoni te faqja e internetit e Postman dhe të shkarkoni dhe instaloni Postman për kompjuterin tuaj kryesor (jo serverin tuaj). Të gjitha udhëzimet e instalimit do të jenë në faqen e tyre të internetit.
Për të filluar, fillimisht do të na duhet të instalojmë Node.js që të mund të fillojmë të zhvillojmë API-në tonë. Ne do të shkarkojmë dhe instalojmë Node.js nga faqja zyrtare e internetit.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Përveç kësaj, ju gjithashtu do të dëshironi të kapni mjetet e nevojshme të ndërtimit, të cilat do të jenë të dobishme në përpilimin e moduleve.
sudo apt-get install build-essential
Për këtë tutorial, ne do të përdorim versionin LTS të Node.js, i cili është versioni 8.9.3.
Do të na duhet të inicializojmë një projekt të ri Node.js, i cili do të përmbajë një aplikacion. Për ta bërë këtë, krijoni një drejtori të re.
mkdir expressapi
Ndrysho në drejtorinë e re. Pasi të jeni brenda, ekzekutoni npm init
dhe plotësoni të gjitha kërkesat e kërkuara. Mbani shënim "pikën hyrëse" të aplikacionit tuaj: ju do ta krijoni këtë skedar më vonë. Pasi të keni mbaruar, do të shihni një package.json
skedar në drejtorinë tuaj aktuale. Ai vepron si një përshkrim i projektit tonë dhe rendit të gjitha varësitë e nevojshme për të funksionuar.
Tani do të konfigurojmë Express.js dhe varësitë e tij.
npm install express
Procesi i instalimit do të fillojë. Do të duhen disa minuta që gjithçka të përfundojë shkarkimin.
Më pas, ne do të krijojmë skedarin tonë kryesor fillestar për API-në tonë. Këtu do të përdorni "pikën hyrëse" që keni parë në package.json
skedar. Për hir të këtij tutoriali, unë do të përdor skemën e paracaktuar të emërtimit, index.js
.
touch index.js
Pastaj, hapeni në redaktuesin e tekstit nano.
nano index.js
Në skedarin tonë kryesor, ne duam së pari të telefonojmë të gjitha paketat tona kryesore dhe të regjistrojmë rrugët tona.
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
var port = process.env.PORT || 8080;
const router = express.Router();
router.get('/', function(req, res) {
res.json({ message: 'API is Online!' });
});
app.use('/api', router);
app.listen(port);
console.log('Listening on port ' + port);
Në thelb ajo që ne po bëjmë këtu është inicializimi i aplikacionit tonë dhe vendosja e një ruteri bazë për API-në tonë. Vini re se ne kemi vendosur portin e aplikacionit tonë në 8080
. Do të na duhet ky numër kur të konfigurojmë API-në tonë RESTful. Tani jemi gati të vazhdojmë dhe të testojmë API-në tonë.
Në drejtorinë e projektit, ekzekutoni sa më poshtë.
node <filename>.js
Kjo do të nisë API-në, ku <filename>
është skedari fillestar që keni specifikuar në package.json
skedar. Pastaj, hapni Postman në PC/Mac tuaj dhe klikoni New
butonin " " në këndin e sipërm djathtas, më pas kliko " Request
". Kur atje, ju duhet të shihni një shirit që thotë " GET
" pranë tij. Këtu do të futim URL-në e kërkesës sonë. Thjesht futni sa vijon në seksionin e URL-së së kërkesës dhe klikoni " Send
".
`http://your-server-ip:3000/api`
Do të shihni " 'API is online'
".
Për të trajtuar rrugët, ne do të përdorim ruterin Express. Nëse nuk e dini se çfarë është një ruter, në thelb është mënyra se si pikat fundore të aplikacionit u përgjigjen kërkesave të klientit. Këtu janë rrugët që do të vendosim si shembull:
/api/numbers
- Tregon të gjithë numrat nga 1-10.
/api/letters
- Tregon të gjitha shkronjat nga AZ.
Tani ne do të krijojmë strukturën tonë të parë të ndërmjetësimit të rrugës, si kjo.
router.use(function(req, res, next) {
console.log('We've got something.');
next() //calls next middleware in the application.
});
router.route('/numbers/:number').get((req, res) => {
res.json({result: req.params.number + 1})
});
Në këtë shembull, ne vendosëm një situatë ku një përdorues mund të kërkojë shumën e një numri + 1 duke dhënë formën e fjalës së tij, duke përdorur metodën GET. Ne përdorim router.route()
funksionin për të treguar se cilin numër duam të kthejmë si rezultat. Parametrat emërtohen me një " :
" përpara tyre. Ne i aksesojmë këto parametra nëpërmjet req.params
.
Ja një shembull me shkronja.
router.route('/letters/:letter').get((req, res) => {
res.json({result: req.params.letter.toUpperCase()})
});
Ne përdorim të njëjtën metodë si më sipër, por e kthejmë letrën si të kapitalizuar.
NGINX është një softuer i njohur me burim të hapur që përdoret për shërbime në ueb, proxies të kundërt, transmetim dhe më shumë. Ne do të përdorim NGINX për të kthyer proxy API-në tonë, për të na lejuar ta ekzekutojmë atë në port 80
, sepse Node.js nuk lejon lidhje në porte më të vogla se 1024 pa qasje rrënjësore. Kjo mund të jetë e dobishme kur lidhni domenin tuaj me serverin tuaj.
Për të filluar instalimin e NGINX, do t'ju duhet të ekzekutoni sa më poshtë në terminalin tuaj dhe të prisni që instalimi të përfundojë.
sudo apt-get install nginx
Më pas, ne do të dëshirojmë të krijojmë skedarin tonë të faqes që NGINX do ta përdorë për të kthyer proxy të aplikacionit tonë.
sudo nano /etc/nginx/sites-available-api.js
Plotësoni skedarin me sa vijon, më pas CTRL+ Opër ta ruajtur.
server {
listen 80;
location / {
proxy_set_header X-Real-IP
$remote_addr;
proxy_set_header
X-Forwarded-For
$proxy_add_x_forwarded_for;
proxy_set_header Host
$http_host;
proxy_set_header
X-NginX-Proxy true; proxy_pass
http://127.0.0.1:8080/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade
$http_upgrade;
proxy_set_header Connection
"upgrade";
proxy_redirect off;
proxy_set_header
X-Forwarded-Proto $scheme;
}
}
Duke përdorur të njëjtin port në të cilin kemi ekzekutuar aplikacionin tonë më herët, ne po i themi Nginx që të ridrejtojë të gjitha kërkesat nga adresa jonë IP në port 80
në API-në tonë që funksionon në port 8080
.
Më pas, aktivizoni përfaqësuesin e kundërt duke sinkronizuar skedarin tonë të krijuar rishtazi me sites-available
dosjen:
sudo ln -s /etc/nginx/sites-available/api /etc/nginx/sites-available
Kjo do të sigurojë që NGINX do të ndryshojë API-në tonë të përfaqësuesit.
Pasi të kemi përfunduar konfigurimin tonë NGINX, ne do të fillojmë NGINX, më pas do të fillojmë API-në tonë. Së pari, rinisni NGINX.
sudo systemctl restart nginx
Më pas, kthehuni në drejtorinë tuaj API dhe filloni atë.
node <filename>.js
Aplikacioni do të ekzekutohet në port 80
. Thjesht kryeni testin nga lart me Postman, për t'u siguruar që gjithçka po funksionon siç duhet.
Në një mjedis prodhimi, ju dëshironi të siguroheni që të keni një menaxher procesi për aplikacionet tuaja Node, për t'u siguruar që ato të qëndrojnë të funksionojnë përgjithmonë në sfond. Në këtë tutorial, ne do të përdorim një menaxher procesi të quajtur PM2 (Process Manager 2), i cili është një menaxher procesi për aplikacionet Node.js që do t'i mbajë ato të gjalla përgjithmonë me kohë minimale joproduktive. PM2 vjen me shumë mjete të dobishme të menaxhimit, të tilla si ndalimi, ringarkimi, ndalimi dhe më shumë. Për të instaluar PM2, shkruani sa vijon dhe prisni që të instalohet.
sudo npm install pm2 -g
Pasi të jetë instaluar, gjithçka që duhet të bëni është të siguroheni që jeni në drejtorinë e projektit, shkruani sa vijon dhe aplikacioni do të fillojë.
pm2 start <filename>.js
Siç u përmend më herët, PM2 ka disa mjete të dobishme që mund t'i përdorni për të menaxhuar më mirë aplikacionin tuaj.
pm2 stop
- Siç sugjeron emri, kjo ju lejon të ndaloni aplikacionin aktualisht në punë dhe të mbyllni procesin e tij. Nëse aplikacioni juaj po prodhon një rezultat të papritur, atëherë ndalimi i tij do të jetë i dobishëm.
pm2 list
- Funksioni i listës ju lejon të shihni të gjitha aplikacionet aktualisht të ekzekutuara nëpërmjet PM2, të përcaktuara sipas emrave të tyre. Nëse keni nevojë të kontrolloni shpejt kohën e përdorimit të aplikacionit tuaj, duhet të përdorni këtë mjet.
pm2 restart
- Nëse aplikacioni juaj ngrin për ndonjë arsye dhe dëshironi ta rifreskoni, rinisja e pm2 bën pikërisht këtë. Do të vrasë procesin e aplikimit dhe do ta fillojë përsëri, nën një proces tjetër.
pm2 monit
- Mjeti i integruar i monitorit i PM2 ju lejon të shikoni një grafik të detajeve specifike të aplikacionit tuaj, si p.sh. përdorimi i CPU/RAM, në një grafik të stilit ncurses miqësor për përdoruesit. Kjo është e dobishme nëse dëshironi një pamje vizuale të ngarkesës së aplikacionit tuaj.
Tani kemi përfunduar detyrën tonë për të krijuar një API RESTful, duke përdorur Node.js, Express dhe duke e kthyer atë në anën e kundërt me NGINX. Mos ngurroni të zgjeroni këtë tutorial. Ju mund të bëni shumë gjëra të shkëlqyera me API-në tuaj të re, të tilla si shtimi i metodave të vërtetimit, një bazë të dhënash, trajtimi më i mirë i rrugës dhe gabimeve, dhe shumë e shumë më tepër. Nëse keni një domen, me një rekord "A" tashmë të vendosur në adresën tuaj IP, atëherë do të jeni në gjendje të përdorni API-në tuaj nga domeni juaj. Nëse dëshironi të mësoni më shumë rreth Express.js, vizitoni uebsajtin e tyre në http://expressjs.com . Për të mësuar më shumë rreth NGINX dhe proksimit të kundërt, vizitoni http://nginx.com . Për të lexuar më shumë rreth PM2, vizitoni faqen e tyre në http://pm2.keymetrics.io .
Përdorimi i një sistemi të ndryshëm? Plesk është një panel kontrolli i pronarit të hostit në internet që lejon përdoruesit të administrojnë faqet e tyre të internetit personale dhe/ose të klientëve, bazat e të dhënave
Hyrje Lets Encrypt është një shërbim i autoritetit certifikues që ofron certifikata falas TLS/SSL. Procesi i instalimit është thjeshtuar nga Certbot,
PHP dhe paketat e lidhura me to janë komponentët më të përdorur gjatë vendosjes së një serveri në internet. Në këtë artikull, ne do të mësojmë se si të konfigurojmë PHP 7.0 ose PHP 7.1 o
Hyrje Lighttpd është një fork i Apache që synon të jetë shumë më pak intensiv me burime. Është i lehtë, prandaj emri i tij, dhe është mjaft i thjeshtë për t'u përdorur. Instaloni
1. Virtualmin/Webmin Virtualmin është një panel kontrolli i fuqishëm dhe fleksibël i hostimit në internet për sistemet Linux dhe UNIX i bazuar në bazën e mirënjohur të internetit me burim të hapur.
Yii është një kornizë PHP që ju lejon të zhvilloni aplikacione më shpejt dhe më lehtë. Instalimi i Yii në Ubuntu është i thjeshtë, siç do të mësoni saktësisht
Screen është një aplikacion që lejon përdorimin e shumëfishtë të sesioneve të terminalit brenda një dritareje. Kjo ju lejon të simuloni dritare të shumta terminale ku është ma
Ky tutorial shpjegon se si të konfiguroni një server DNS duke përdorur Bind9 në Debian ose Ubuntu. Gjatë gjithë artikullit, zëvendësoni emrin e domain-it tuaj në përputhje me rrethanat. Në
Hyrje Logrotate është një mjet Linux që thjeshton administrimin e skedarëve të regjistrit. Zakonisht funksionon një herë në ditë përmes një pune cron dhe menaxhon bazën e regjistrave
VULTR kohët e fundit ka bërë ndryshime në fund të tyre dhe gjithçka duhet të funksionojë mirë tani me NetworkManager të aktivizuar. Nëse dëshironi të çaktivizoni
Icinga2 është një sistem i fuqishëm monitorimi dhe kur përdoret në një model master-klient, ai mund të zëvendësojë nevojën për kontrolle monitorimi të bazuara në NRPE. Master-klien
Në këtë artikull, ne do të shohim se si të përpiloni dhe instaloni Nginx mainline nga burimet zyrtare të Nginx me modulin PageSpeed, i cili ju lejon t
Përdorimi i një sistemi të ndryshëm? Gitea është një sistem alternativ i kontrollit të versionit me burim të hapur, i vetë-pritur, i mundësuar nga Git. Gitea është shkruar në Golang dhe është
Përdorimi i një sistemi të ndryshëm? Gitea është një sistem alternativ i kontrollit të versionit me burim të hapur, i vetë-pritur, i mundësuar nga git. Gitea është shkruar në Golang dhe është
Përdorimi i një sistemi të ndryshëm? MODX Revolution është një Sistem i Menaxhimit të Përmbajtjes (CMS) i shpejtë, fleksibël, i shkallëzuar, me burim të hapur, i shkallës së ndërmarrjes, i shkruar në PHP. Ajo i
Përdorimi i një sistemi të ndryshëm? Docker është një aplikacion që lejon vendosjen e programeve që ekzekutohen si kontejnerë. Ishte shkruar në programin popullor Go
Golang është një gjuhë programimi e zhvilluar nga Google. Falë shkathtësisë, thjeshtësisë dhe besueshmërisë së tij, Golang është bërë një nga më të populluarit
Çfarë është Lopa e Pistë (CVE-2016-5195)? Dobësia e Dirty Cow shfrytëzohet përmes mënyrës se si Linux përpunon kodin. Ai lejon që një përdorues i paprivilegjuar të gai
Të kesh vetëm një përdorues, i cili është root, mund të jetë i rrezikshëm. Pra, le ta rregullojmë atë. Vultr na ofron lirinë për të bërë si të duam me përdoruesit dhe serverët tanë
Nëse e keni harruar fjalëkalimin tuaj rrënjësor MySQL, mund ta rivendosni atë duke ndjekur hapat në këtë artikull. Procesi është mjaft i thjeshtë dhe funksionon në to
Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.
A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.
Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.
Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.
Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…
Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.
Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.
Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.
Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.
Së fundmi Apple lëshoi macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë