วิธีสร้าง Node.js RESTful API โดยใช้ Express.js บน Ubuntu 16.04 LTS

ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีตั้งค่า RESTful API ที่สมบูรณ์ซึ่งจะให้บริการคำขอ HTTP โดยใช้ Node.js และ Express ในขณะที่ย้อนกลับ proxying ด้วย NGINX บน Ubuntu 16.04 LTS เราจะใช้แอปพลิเคชันที่ชื่อว่าบุรุษไปรษณีย์เป็นเครื่องมือพัฒนา API ที่เป็นที่รู้จักกันดีในการทดสอบ API ของเราและตรวจสอบให้แน่ใจว่ามันทำงานได้อย่างสมบูรณ์ Node.js เป็นเฟรมเวิร์ก JavaScript ที่ทำงานข้ามแพลตฟอร์มได้อย่างรวดเร็วโดยใช้เอ็นจิ้น V8 ของ Chrome มันถูกใช้ในทั้งเดสก์ท็อปและเซิร์ฟเวอร์และมีชื่อเสียงในการจัดการห่วงเหตุการณ์แบบเธรดเดี่ยว เราจะใช้ Node.js เป็นแบ็กเอนด์สำหรับ RESTful API ของเราซึ่งมาพร้อมกับ Express.js ซึ่งเป็นเฟรมเวิร์กเว็บแอปพลิเคชันของเราที่สร้างขึ้นสำหรับ Node.js Express.js เปิดตัวเป็นซอฟต์แวร์เสรีและเปิด Express เป็นฝั่งเซิร์ฟเวอร์เขียนด้วย JavaScript และถูกออกแบบมาสำหรับการสร้าง API ซึ่งทำให้สมบูรณ์แบบสำหรับโครงการของเรา ในทางกลับกันบุรุษไปรษณีย์เป็นไคลเอนต์ HTTP ที่ทรงพลังมากด้วยการพัฒนา API ในใจ มันมีเครื่องมือทั้งหมดที่คุณอาจต้องการสำหรับการพัฒนา API

การติดตั้งบุรุษไปรษณีย์

ก่อนอื่นคุณต้องตรงไปที่เว็บไซต์ของบุรุษไปรษณีย์และดาวน์โหลดและติดตั้งบุรุษไปรษณีย์สำหรับพีซีหลักของคุณ (ไม่ใช่เซิร์ฟเวอร์ของคุณ) คำแนะนำการติดตั้งทั้งหมดจะอยู่ในเว็บไซต์

กำลังติดตั้ง Node.js

ในการเริ่มต้นเราจะต้องติดตั้ง Node.js ก่อนเพื่อให้เราสามารถเริ่มพัฒนา API ของเรา เราจะทำการดาวน์โหลดและติดตั้ง Node.js จากเว็บไซต์ทางการ

 curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
 sudo apt-get install -y nodejs

นอกจากนี้คุณจะต้องคว้าเครื่องมือสร้างที่จำเป็นซึ่งจะเป็นประโยชน์ในการรวบรวมโมดูล

sudo apt-get install build-essential

สำหรับบทช่วยสอนนี้เราจะใช้รุ่น LTS ของ Node.js ซึ่งเป็นรุ่น 8.9.3

กำลังเริ่มต้นโครงการ Node.js ของเรา

เราจะต้องเริ่มต้นโครงการ Node.js ใหม่ซึ่งจะมีแอปพลิเคชัน หากต้องการทำเช่นนั้นให้สร้างไดเรกทอรีใหม่

 mkdir expressapi 

เปลี่ยนเป็นไดเร็กทอรีใหม่ เมื่อเข้าไปข้างในแล้วเรียกใช้npm initและทำตามคำแนะนำที่จำเป็นทั้งหมด จดบันทึก "จุดเริ่มต้น" ของแอปพลิเคชันของคุณ: คุณจะสร้างไฟล์นี้ในภายหลัง เมื่อเสร็จแล้วคุณจะเห็นpackage.jsonไฟล์ในไดเรกทอรีปัจจุบันของคุณ มันทำหน้าที่เป็นคำอธิบายของโครงการของเราและแสดงรายการทั้งหมดที่จำเป็นในการทำงาน

การตั้งค่า Express.js

ตอนนี้เราจะกำหนดค่า Express.js และมันขึ้นอยู่กับการพึ่งพา

npm install express

กระบวนการติดตั้งจะเริ่มขึ้น จะใช้เวลาสองสามนาทีก่อนที่ทุกอย่างจะเสร็จสิ้นการดาวน์โหลด

เริ่มไฟล์หลักของเรา

ต่อไปเราจะสร้างไฟล์เริ่มต้นหลักสำหรับ API ของเรา ที่นี่คุณจะใช้ "จุดเข้าใช้งาน" ที่คุณเห็นในpackage.jsonไฟล์ เพื่อประโยชน์ของบทช่วยสอนนี้ฉันจะใช้รูปแบบการตั้งชื่อเริ่มต้น, index.js.

touch index.js

จากนั้นเปิดในตัวแก้ไขข้อความนาโน

nano index.js

ในไฟล์หลักของเราเราต้องการโทรหาแพ็คเกจหลักทั้งหมดของเราก่อนและลงทะเบียนเส้นทางของเรา

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);

สิ่งที่เราทำที่นี่คือการเริ่มต้นแอพของเราและตั้งค่าเราเตอร์พื้นฐานสำหรับ API ของเรา 8080โปรดทราบว่าเราตั้งพอร์ตแอพลิเคชันของเราที่จะ เราจะต้องใช้หมายเลขนี้เมื่อเรากำหนดค่า RESTful API ของเรา ตอนนี้เราพร้อมที่จะไปข้างหน้าและทดสอบ API ของเรา

ทดสอบ API ของเรากับบุรุษไปรษณีย์

ในไดเรกทอรีโครงการเรียกใช้ต่อไปนี้

node <filename>.js

นี่จะเริ่ม API ซึ่ง<filename>เป็นไฟล์เริ่มต้นที่คุณระบุในpackage.jsonไฟล์ จากนั้นเปิดบุรุษไปรษณีย์บนพีซี / Mac ของคุณNewแล้วคลิกปุ่ม " Request" ที่มุมบนขวาจากนั้นคลิก " " เมื่อนั้นคุณจะเห็นแถบที่ระบุว่าGETอยู่ติดกับ" " ที่นี่เราจะป้อน URL คำขอของเรา เพียงป้อนข้อมูลต่อไปนี้ในส่วน URL คำขอและคลิก " Send"

`http://your-server-ip:3000/api` 

คุณจะเห็น " 'API is online'"

เส้นทาง API

เพื่อจัดการเส้นทางเราจะใช้เราเตอร์ด่วน หากคุณไม่รู้ว่าเราเตอร์คืออะไรจุดสิ้นสุดของแอปพลิเคชันตอบสนองต่อคำขอของลูกค้าเป็นหลัก นี่คือเส้นทางที่เราจะตั้งค่าเป็นตัวอย่าง:

  • /api/numbers - แสดงตัวเลขทั้งหมดตั้งแต่ 1-10

  • /api/letters - แสดงตัวอักษรทั้งหมดจาก AZ

ตอนนี้เราจะตั้งค่าโครงสร้างมิดเดิลแวร์เส้นทางแรกของเราอย่างนั้น

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})
});

ในตัวอย่างนี้เราตั้งค่าสถานการณ์ที่ผู้ใช้สามารถร้องขอผลรวมของตัวเลข + 1 โดยการจัดเตรียมรูปแบบคำของมันโดยใช้วิธีการ GET เราใช้router.route()ฟังก์ชั่นเพื่อชี้ไปยังหมายเลขที่เราต้องการส่งกลับเป็นผลลัพธ์ พารามิเตอร์ถูกตั้งชื่อด้วย " :" ที่ด้านหน้า เราเข้าถึงพารามิเตอร์เหล่านี้ (s) req.paramsผ่านทาง

นี่คือตัวอย่างของตัวอักษร

   router.route('/letters/:letter').get((req, res) => {
     res.json({result: req.params.letter.toUpperCase()})
});

เราใช้วิธีเดียวกันกับข้างต้น แต่เราส่งจดหมายกลับเป็นตัวพิมพ์ใหญ่

รู้เบื้องต้นเกี่ยวกับ NGINX

NGINX เป็นซอฟต์แวร์โอเพนซอร์ซที่รู้จักกันดีซึ่งใช้สำหรับการให้บริการเว็บย้อนกลับพร็อกซีสตรีมมิ่งและอีกมากมาย เราจะใช้ NGINX เพื่อย้อนกลับ proxy API ของเราเพื่อให้เราเรียกใช้บนพอร์ต80เนื่องจาก Node.js ไม่อนุญาตการเชื่อมต่อบนพอร์ตที่น้อยกว่า 1024 โดยไม่มีการเข้าถึงรูท สิ่งนี้มีประโยชน์เมื่อเชื่อมโยงโดเมนของคุณกับเซิร์ฟเวอร์

ตั้งค่า NGINX

ในการเริ่มต้นติดตั้ง NGINX คุณจะต้องเรียกใช้สิ่งต่อไปนี้ในเทอร์มินัลของคุณและรอให้การติดตั้งเสร็จสมบูรณ์

sudo apt-get install nginx

ต่อไปเราจะต้องการสร้างไฟล์ไซต์ของเราที่ NGINX จะใช้เพื่อย้อนกลับ proxy app ของเรา

sudo nano /etc/nginx/sites-available-api.js

เติมไฟล์ด้วยค่าต่อไปนี้จากนั้นกดCTRL+ Oเพื่อบันทึก

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;
       }
}

ใช้พอร์ตเดียวกันเราวิ่งในโปรแกรมของเราก่อนหน้านี้เรากำลังบอก Nginx เพื่อเปลี่ยนเส้นทางการร้องขอทั้งหมดจากที่อยู่ IP ของเราในพอร์ต80การ API 8080ของเราทำงานบนพอร์ต

ถัดไปเปิดใช้งาน reverse proxy โดยเชื่อมโยงไฟล์ที่สร้างขึ้นใหม่ของเราไปยังsites-availableโฟลเดอร์:

sudo ln -s /etc/nginx/sites-available/api /etc/nginx/sites-available

สิ่งนี้จะทำให้มั่นใจได้ว่า NGINX จะย้อนกลับ proxy API ของเรา

ทำงานครั้งแรกกับ NGINX

เมื่อเราเสร็จสิ้นการกำหนดค่า NGINX ของเราเราจะเริ่ม NGINX แล้วเริ่ม API ของเรา ก่อนอื่นให้รีสตาร์ท NGINX

sudo systemctl restart nginx

จากนั้นเปลี่ยนกลับไปที่ไดเรกทอรี API ของคุณแล้วเริ่ม

node <filename>.js

80โปรแกรมจะทำงานบนพอร์ต เพียงเรียกใช้การทดสอบจากด้านบนกับบุรุษไปรษณีย์เพื่อให้แน่ใจว่าทุกอย่างทำงานอย่างถูกต้อง

ทำให้ API ของเราทำงานต่อไป

ในสภาวะแวดล้อมการใช้งานจริงคุณต้องการให้แน่ใจว่าคุณมีผู้จัดการกระบวนการสำหรับแอ็พพลิเคชันโหนดของคุณเพื่อให้แน่ใจว่าพวกเขายังคงทำงานอยู่ตลอดเวลาในพื้นหลัง ในบทช่วยสอนนี้เราจะใช้ตัวจัดการกระบวนการที่เรียกว่า PM2 (ตัวจัดการกระบวนการ 2) ซึ่งเป็นตัวจัดการกระบวนการสำหรับแอปพลิเคชัน Node.js ที่จะทำให้พวกเขามีชีวิตอยู่ตลอดไปด้วยการหยุดทำงานน้อยที่สุด PM2 มาพร้อมกับเครื่องมือการจัดการที่มีประโยชน์มากมายเช่นหยุดโหลดใหม่หยุดชั่วคราวและอื่น ๆ หากต้องการติดตั้ง PM2 ให้พิมพ์ดังต่อไปนี้แล้วรอให้ติดตั้ง

sudo npm install pm2 -g

เมื่อติดตั้งแล้วสิ่งที่คุณต้องทำคือตรวจสอบให้แน่ใจว่าคุณอยู่ในไดเรกทอรีโครงการพิมพ์ต่อไปนี้และแอปพลิเคชันจะเริ่มขึ้น

pm2 start <filename>.js

การจัดการแอปพลิเคชันของเราด้วย PM2

ดังที่ได้กล่าวไว้ก่อนหน้า PM2 มีเครื่องมือที่มีประโยชน์ซึ่งคุณสามารถใช้เพื่อจัดการแอปพลิเคชันของคุณได้ดีขึ้น

  • pm2 stop- ตามชื่อแนะนำสิ่งนี้จะช่วยให้คุณสามารถหยุดแอปพลิเคชันที่ทำงานอยู่ในปัจจุบันและฆ่ากระบวนการ หากใบสมัครของคุณสร้างผลลัพธ์ที่ไม่คาดคิดการหยุดมันจะมีประโยชน์

  • pm2 list- ฟังก์ชั่นรายการช่วยให้คุณเห็นแอปพลิเคชั่นที่ทำงานอยู่ในปัจจุบันทั้งหมดผ่าน PM2 ซึ่งแมปด้วยชื่อของพวกเขา หากคุณต้องการตรวจสอบสถานะการออนไลน์ของแอปพลิเคชันของคุณอย่างรวดเร็วคุณควรใช้เครื่องมือนี้

  • pm2 restart- หากแอปพลิเคชันของคุณค้างด้วยเหตุผลบางประการและคุณต้องการโหลดซ้ำการรีสตาร์ท pm2 จะทำเช่นนั้น มันจะฆ่าขั้นตอนการสมัครและเริ่มต้นอีกครั้งภายใต้กระบวนการอื่น

  • pm2 monit- เครื่องมือตรวจสอบภายในของ PM2 ช่วยให้คุณดูกราฟของรายละเอียดเฉพาะแอปพลิเคชันของคุณเช่นการใช้ CPU / RAM ในกราฟสไตล์ ncurses ที่ใช้งานง่าย สิ่งนี้มีประโยชน์หากคุณต้องการให้เห็นภาพการโหลดแอปพลิเคชันของคุณ

หมายเหตุสุดท้าย

ตอนนี้เราได้เสร็จสิ้นการสร้าง RESTful API โดยใช้ Node.js, Express และ reverse proxying ด้วย NGINX อย่าลังเลที่จะขยายการสอนนี้ คุณสามารถทำส���่งดีๆมากมายกับ API ใหม่ของคุณเช่นเพิ่มวิธีการรับรองความถูกต้องฐานข้อมูลเส้นทางที่ดีขึ้นและการจัดการข้อผิดพลาดและอื่น ๆ อีกมากมาย หากคุณมีโดเมนที่มีระเบียน "A" ตั้งค่าเป็นที่อยู่ IP ของคุณแล้วคุณจะสามารถเข้าถึง API จากโดเมนของคุณ หากคุณต้องการที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ Express.js เยี่ยมชมเว็บไซต์ของพวกเขาที่http://expressjs.com ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ NGINX และพร็อกซีกลับแวะไปhttp://nginx.com อ่านเพิ่มเติมเกี่ยวกับ PM2 ไปที่หน้าของพวกเขาที่http://pm2.keymetrics.io



Leave a Comment

ตั้งค่า NFS Share บน Debian

ตั้งค่า NFS Share บน Debian

NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF

วิธีการติดตั้ง Directus 6.4 CMS บน Fedora 26 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน Fedora 26 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา

ติดตั้งเซิร์ฟเวอร์ TeamTalk บน Linux

ติดตั้งเซิร์ฟเวอร์ TeamTalk บน Linux

TeamTalk เป็นระบบการประชุมที่ช่วยให้ผู้ใช้สามารถสนทนาด้วยเสียง / วิดีโอคุณภาพสูงสนทนาผ่านข้อความถ่ายโอนไฟล์และแชร์หน้าจอ มันฉัน

การติดตั้ง Pagekit CMS บน CentOS 7

การติดตั้ง Pagekit CMS บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

สฟิงซ์เป็นเครื่องมือค้นหาข้อความแบบโอเพนซอร์ซฟรีและโอเพนซอร์สซึ่งสามารถรวมเข้ากับเว็บแอปพลิเคชั่นต่าง ๆ เพื่อให้ได้คุณภาพที���รวดเร็วและสูง

การใช้คีย์ SSH ของคุณเพื่อเข้าสู่ผู้ใช้ที่ไม่ใช่รูท

การใช้คีย์ SSH ของคุณเพื่อเข้าสู่ผู้ใช้ที่ไม่ใช่รูท

Vultr มีคุณสมบัติที่อนุญาตให้คุณติดตั้งคีย์ SSH ล่วงหน้าเมื่อสร้างอินสแตนซ์ใหม่ สิ่งนี้อนุญาตให้คุณเข้าถึงผู้ใช้รูทเซิร์ฟเวอร์อย่างไรก็ตาม

สร้างเครือข่ายสังคมด้วย Diaspora บน Debian 9

สร้างเครือข่ายสังคมด้วย Diaspora บน Debian 9

ใช้ระบบที่แตกต่างกันอย่างไร Diaspora เป็นเครือข่ายโซเชียลที่ตระหนักถึงความเป็นส่วนตัวและเป็นโอเพ่นซอร์ส ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการตั้งค่าและกำหนดค่า po Diaspora

การติดตั้ง Fuel CMS บน Debian 9

การติดตั้ง Fuel CMS บน Debian 9

ใช้ระบบที่แตกต่างกันอย่างไร Fuel CMS เป็นระบบจัดการเนื้อหาที่ใช้ CodeIgniter ซอร์สโค้ดของมันถูกโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง Snipe-IT บน Ubuntu 16.10

วิธีการติดตั้ง Snipe-IT บน Ubuntu 16.10

ใช้ระบบที่แตกต่างกันอย่างไร Snipe-IT เป็นเว็บแอปพลิเคชั่นฟรีและโอเพนซอร์สสำหรับการจัดการสินทรัพย์ด้านไอที มันถูกเขียนบนกรอบงาน Laravel 5.2 และการใช้งาน

วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04

วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ

วิธีการติดตั้ง GCC บน CentOS 6

วิธีการติดตั้ง GCC บน CentOS 6

CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม

วิธีการติดตั้ง Ranger Terminal File Manager บน Linux

วิธีการติดตั้ง Ranger Terminal File Manager บน Linux

Ranger เป็นตัวจัดการไฟล์แบบบรรทัดคำสั่งที่มีการเชื่อมโยงคีย์ VI มันจัดเตรียมอินเตอร์เฟส curses ที่เรียบง่ายและดีพร้อมมุมมองบนลำดับชั้นไดเร็กทอรี

วิธีการสร้าง Brotli จากซอร์สบน Ubuntu 18.04 LTS

วิธีการสร้าง Brotli จากซอร์สบน Ubuntu 18.04 LTS

ใช้ระบบที่แตกต่างกันอย่างไร Brotli เป็นวิธีการบีบอัดแบบใหม่ที่มีอัตราการบีบอัดที่ดีกว่า GZIP ซอร์สโค้ดของมันถูกโฮสต์แบบสาธารณะบน Githu นี้

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น

วิธีการติดตั้ง Omeka Classic 2.4 CMS บน Ubuntu 16.04 LAMP VPS

วิธีการติดตั้ง Omeka Classic 2.4 CMS บน Ubuntu 16.04 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Omeka Classic 2.4 CMS เป็นแพลตฟอร์มเผยแพร่ดิจิตอลฟรีและโอเพ่นซอร์สและระบบการจัดการเนื้อหา (CMS) สำหรับการแบ่งปันดิจิต้า

ปิดใช้งานหรือ จำกัด การล็อกอินรูทผ่าน SSH บน Linux

ปิดใช้งานหรือ จำกัด การล็อกอินรูทผ่าน SSH บน Linux

การอนุญาตให้ล็อกอินรูทผ่าน SSH นั้นถือว่าเป็นการปฏิบัติด้านความปลอดภัยที่ไม่ดีทั่วทั้งอุตสาหกรรมเทคโนโลยี คุณสามารถดำเนินการที่ละเอียดอ่อนแทน

วิธีการติดตั้ง Moodle บน CentOS 7

วิธีการติดตั้ง Moodle บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย

วิธีการติดตั้ง RabbitMQ บน Ubuntu 16.04

วิธีการติดตั้ง RabbitMQ บน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร RabbitMQ เป็นนายหน้าข้อความโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายเขียนในภาษาการเขียนโปรแกรม Erlang เป็นมิดเดิลแวร์ที่มุ่งเน้นข้อความ

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true