Telepítse a Plesket a CentOS 7 rendszeren
Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait
Ebben az oktatóanyagban megtanuljuk, hogyan állíthatunk be egy Koa.js webalkalmazást éles használatra a Node.js használatával. Egy mintatartományt is összekapcsolunk egy fordított proxyval, Apache használatával, és megtanuljuk, hogyan kell kezelni azt megfelelő folyamatkezelővel. Minden további nélkül kezdjük.
A Node.js egy gyors, többplatformos JavaScript-keretrendszer, amely a Chrome V8-as motorján alapul. Asztali és szerveralkalmazásokban egyaránt használják, és híres egyszálú eseményhurok kezeléséről. A Node.js tartalmazza a Node Package Manager (NPM) nevű csomagnyilvántartást, amely több mint félmillió csomagot tartalmaz. Az NPM-csomagok (vagy modulok) a Node.js gerincét képezik, mivel ezek közösség által vezérelt kódok, amelyek hasznosak lehetnek a Node.js alkalmazásban. Koa.js alkalmazásunkban a Node.js a funkciójának központi része.
A Koa.js egy minimalista webes keretrendszer, amely a Node.js platformra épül. Ugyanaz a csapat készítette a népszerű Express.js keretrendszer mögött, és célja az amúgy is minimalista Express.js keretrendszer további minimalizálása a köztes szoftverek magjából való kizárásával. A Koa.js egyik fő jellemzője, hogy nincs visszahívás. A Koa.js ES6-alapú generátorokra és ES6-funkciókra épül, mint például a Promises.
Az Apache egy népszerű nyílt forráskódú webszerver, amelyet a webszerverek alapvető kiindulópontjaként használnak. Ebben az oktatóanyagban az Apache-t fogjuk használni fordított proxyként, amely lehetővé teszi, hogy alkalmazásunkat egy mintatartományhoz kapcsoljuk. Ha nem rendelkezik domainnel, ez az oktatóanyag továbbra is használható lesz, azzal az egyetlen különbséggel, hogy a webhely domain helyett az Ön VPS IP-címén fog futni.
Mint minden Node.js keretrendszer esetében, telepítenie kell a Node.js-t a VPS-re. Az oktatóanyag kedvéért feltételezem, hogy a Node.js már telepítve van a rendszerén. Ha nem, egyszerűen kövesse az itt található utasításokat .
Létre kell hoznunk egy mappát, amely az alkalmazásunk alapvető fájljait tartalmazza.
mkdir site
Nyugodtan cserélje site
le bármilyen más névre, amelyet a könyvtárnak szeretne. Ezután inicializálnunk kell a Node.js csomagfájlt. Váltson át az imént létrehozott könyvtárra, futtassa a npm init
, majd hajtsa végre az utasításokat. A végén valahogy így kell kinéznie:
{
"name": "site",
"version": "1.0.0",
"description": "Koa.js Site",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "yourname",
"license": "ISC"
}
Most, hogy beállítottuk a könyvtárunkat, folytathatjuk a Koa.js telepítését. Az aktuális munkakönyvtárba /site
írja be a következőt.
npm install koa
Ezzel letölti a Koa.js modult az NPM-ről, és későbbi felhasználás céljából telepíti a projektkönyvtárunkba. Ezután létrehozzuk a minta alkalmazásfájlunkat, amely tartalmazza az alkalmazás kódját. Ehhez hozzon létre egy index.js
fájlt.
nano index.js
Miután belépett a fájlba, hozzon létre egy minta alkalmazást.
const Koa = require('koa');
const app = new Koa();
app.use(async ctx => {
ctx.body = 'Hello World';
});
app.listen(3000);
console.log('Website is live!')
Mentse és zárja be a fájlt. CTRL+ X.
Győződjön meg arról, hogy az alkalmazásunk megfelelően fut. Az elindításához futtassa a node index.js
, és látni fogja Website is live
a konzolon.
Most, hogy tudjuk, hogy webhelyünk működik, folytathatjuk az Apache és függőségei telepítését.
sudo apt install -y libapache2-mod-proxy-html libxml2-dev
Az Apache-ban található fordított proxy funkció használatához engedélyeznünk kell a szükséges modulokat.
a2enmod proxy
a2enmod proxy_http
a2enmod proxy_ajp
a2enmod rewrite
a2enmod deflate
a2enmod headers
a2enmod proxy_balancer
a2enmod proxy_connect
a2enmod proxy_html
Lehetséges, hogy ezek közül a modulok közül néhány már engedélyezve van, de mindig célszerű még egyszer ellenőrizni őket.
Most szerkesztenünk kell az Apache alapértelmezett konfigurációs fájlját.
sudo nano /etc/apache2/sites-enabled/000-default.conf
Itt hozzá kell adnunk egy blokkot az alkalmazásunkhoz.
<VirtualHost *:*>
ProxyPreserveHost On
ProxyPass / http://0.0.0.0:3000/
ProxyPassReverse / http://0.0.0.0:3000
ServerName localhost
</VirtualHost>
Mentse el a fájlt, CTRL+ X.
Észreveheti, hogy 3000
a portot használjuk a saját ProxyPass
és az ProxyPassReverse
IP portként . Mivel ez ugyanaz a port, amelyen a Koa.js alkalmazást futtatjuk, feltétlenül a megfelelő portot kell megadnunk.
Ha a változtatások érvénybe lépnek, újra kell indítanunk az Apache-t, és újra kell indítanunk a Koa.js alkalmazásunkat.
sudo systemctl restart apache2
Ez biztosítja, hogy konfigurációs fájlunk aktív és készen álljon a működésre, amikor elindítjuk a Koa.js alkalmazásunkat. Az Apache újraindítása után lépjen vissza a webhely könyvtárába, és indítsa el a Koa.js alkalmazást, ahogy korábban tettük. Böngészőjében navigáljon a http://yourdomain
, vagy a címre http://yourip:
, és megjelenik a „Hello World” felirat.
Most, hogy áttekintettük a Koa.js mintaalkalmazás létrehozásának alapjait, rájöttünk, hogy éles környezetben nem praktikus az alkalmazás indítása úgy, ahogy most vagyunk. A folyamatmenedzser mindenképpen követelmény. Itt jön képbe a systemd. Egyszerűen fogalmazva, a systemd olyan szoftverekből áll, amelyek építőelemeket biztosítanak egy Linux rendszer számára. Az „init”-hez hasonlóan rendszert biztosít a felhasználói folyamatok kezelésére a rendszerindítás után. Alkalmazásunk esetében a systemd lehetővé teszi, hogy a rendszer újraindítása után automatikusan elindítsuk weboldalunkat, ha olyan esemény történik, amely megszakítja a rendszer üzemidejét. Ezenkívül egy sor olyan eszközt is biztosít, amelyek hasznosak lehetnek alkalmazásunk kezelése során. A legjobb az egészben az, hogy az Ubuntu 16.04 LTS-be van beépítve, így nincs szükség további szoftverek telepítésére.
Minden, amire szükségünk van az alkalmazásunk elindításához, egy nevű fájlban található service
. Részleteket tartalmaz az alkalmazásunkról, mint például a neve, a könyvtár, a környezet és egyebek. A rendszerfájl létrehozásához nyisson meg egy szövegszerkesztőt.
sudo nano /lib/systemd/system/site.service
Szerkessze és mentse el a fájlt így.
[Unit]
Description=desc here
Documentation=https://example.com
After=network.target
[Service]
Environment=NODE_PORT=3000
Type=simple
User=youruser
ExecStart=/usr/bin/node /home/[youruser]/site/index.js
Restart=on-failure
[Install]
WantedBy=multi-user.target
Cserélje youruser
ki a kiszolgáló felhasználónevét. Íme egy gyors összefoglaló a fontos mezőkről:
After
- Ez arra figyelmezteti a rendszert, hogy az alkalmazás elindítása előtt várja meg, amíg a hálózati interfész elkészül.Environment
- Itt adhatunk meg környezeti változókat az alkalmazásunkhoz. A Node.js portunk az egyik ilyen.Type
- Ez tájékoztatja a rendszert arról, hogy az alkalmazásunk egyszerűen elindítható anélkül, hogy elágaznának a felhasználói jogosultságok és hasonlók.User
- Ez jelzi a systemd-nek, hogy a felhasználói fiókunk alatt szeretnénk futtatni az alkalmazást, ami ajánlott. Az alkalmazások root felhasználóként való futtatása számos biztonsági kompromisszumhoz vezethet.ExecStart
- Lényegében az a parancs, amelyet a systemd fog futtatni az alkalmazás elindításához, hasonlóan ahhoz, ahogy korábban kézzel indítottuk.Restart
- Megmondja a rendszernek, hogy milyen feltételek mellett indítsa újra az alkalmazást. Ebben az esetben hiba esetén a weboldalunkat szeretnénk újraindítani.Most már készen állunk rendszerszolgáltatásunk elindítására.
sudo systemctl daemon-reload
Erre akkor van szükség, amikor egy systemd szolgáltatásfájl megváltozik, hogy a systemd regisztrálja az új módosításokat.
Ezután indítsa el az alkalmazást.
sudo systemctl start site
Keresse fel újra a webhelyet a böngészőben, és ellenőrizze, hogy minden működik-e.
stop
- Teljesen leállítja az alkalmazást.restart
- Leállítja az alkalmazást, és újra elindítja egy új folyamat alatt.enable
- Azt mondja a rendszernek, hogy indítsa el az alkalmazást, amikor elindítja a számítógépet.status
- Információkat jelenít meg az éppen futó alkalmazásról, például az üzemidőt, az alkalmazás állapotát és egyebeket.E funkciók bármelyikének használatához futtassa a következőt.
systemctl <function> site
Sikeresen beállítottunk egy Koa.js alkalmazást, és megtanultuk, hogyan kell visszafordítani a proxyt, valamint kezelni a systemd segítségével. Most már készen áll az alkalmazás kiterjesztésére és erre a példára építve. Ha többet szeretne megtudni a Koa.js-ről, és további hasznos tudnivalókról , látogassa meg webhelyüket , ahol további hasznos információkat talál. Ezen kívül, ha többet szeretne megtudni a systemd folyamatkezelőjéről, olvassa el a dokumentációt itt . Végül, ha többet szeretne megtudni az Apache fordított proxyjáról, nézze meg őket itt .
Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait
Bevezetés A Cacti egy nyílt forráskódú megfigyelő és grafikus eszköz, amely teljes mértékben az RRD adatokon alapul. A Cactuson keresztül szinte bármilyen típusú eszközt felügyelhet
Bevezetés A Lets Encrypt egy hitelesítésszolgáltató szolgáltatás, amely ingyenes TLS/SSL-tanúsítványokat kínál. A telepítés folyamatát a Certbot leegyszerűsíti,
Más rendszert használ? Mi az a Tekkit Classic? A Tekkit Classic egy modpack ahhoz a játékhoz, amelyet mindenki ismer és szeret; Minecraft. Tartalmaz néhányat a ver
Más rendszert használ? Ez az oktatóanyag megmutatja, hogyan telepítheti a csoportmunka iRedMail programot a Debian Wheezy friss telepítésére. Használnia kell egy szervát
Más rendszert használ? A Jekyll nagyszerű alternatíva a WordPress helyett blogíráshoz vagy tartalommegosztáshoz. Nem igényel adatbázist, és nagyon egyszerű i
Más rendszert használ? Ha Debian szervert vásárol, akkor mindig rendelkeznie kell a legújabb biztonsági javításokkal és frissítésekkel, akár alszik, akár nem
A PHP és a kapcsolódó csomagok a leggyakrabban használt összetevők a webszerverek telepítésekor. Ebben a cikkben megtudjuk, hogyan kell beállítani a PHP 7.0 vagy PHP 7.1 o verzióját
A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa
Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés
1. Virtualmin/Webmin A Virtualmin egy hatékony és rugalmas web hosting vezérlőpanel Linux és UNIX rendszerek számára, amely a jól ismert nyílt forráskódú webbázison alapul.
A Yii egy PHP-keretrendszer, amely lehetővé teszi alkalmazások gyorsabb és egyszerűbb fejlesztését. A Yii telepítése Ubuntura egyszerű, amint azt pontosan megtudhatja
A Screen egy olyan alkalmazás, amely lehetővé teszi a terminálmunkamenetek többszöri használatát egy ablakon belül. Ez lehetővé teszi több terminálablak szimulálását, ahol ez ma
Ez az oktatóanyag elmagyarázza, hogyan állíthat be DNS-kiszolgálót a Bind9 használatával Debian vagy Ubuntu rendszeren. A cikkben ennek megfelelően helyettesítse be a saját-domain-neve.com címet. TH-nál
Bevezetés A Logrotate egy Linux segédprogram, amely leegyszerűsíti a naplófájlok kezelését. Általában naponta egyszer fut egy cron-feladaton keresztül, és kezeli a naplóbázist
A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani
Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens
Más rendszert használ? A Red5 egy Java nyelven megvalósított nyílt forráskódú médiaszerver, amely lehetővé teszi többfelhasználós Flash-alkalmazások, például élő streamin futtatását.
Ebben a cikkben látni fogjuk, hogyan fordíthatja le és telepítheti az Nginx fővonalat az Nginx hivatalos forrásaiból a PageSpeed modullal, amely lehetővé teszi a
Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,
A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.
Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.
Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.
Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.
Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…
Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.
Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.
Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.
Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.
Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket