Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Nodejs membina pelayan sumber statik
Dengan perkembangan Internet, pembangunan Web telah menjadi industri yang sangat popular di seluruh dunia Bagi pembangun, untuk membangunkan dan menerbitkan kod dengan cepat dan berkesan, kami memerlukan pelayan sumber statik untuk membantu kami Mengurus dan memproses sumber statik. , terutamanya dalam model pembangunan di mana hujung depan dan belakang dipisahkan, digunakan dengan lebih kerap Node.js telah menjadi bahasa pembangunan yang sangat popular sejak dikeluarkan, dan modul httpnya sendiri amat sesuai untuk membina sumber statik. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Node.js untuk membina pelayan sumber statik ringan.
1. Pasang Node
Mula-mula kita perlu memasang Node.js, iaitu bahasa pengaturcaraan bahagian pelayan berdasarkan JavaScript dan boleh dimuat turun dan dipasang di tapak web rasmi.
2 Mulakan projek
Kami perlu mencipta folder secara setempat dan memulakan projek Node untuknya.
Masukkan arahan berikut dalam baris arahan:
mkdir node-static-server cd node-static-server npm init
Selepas memasukkan arahan di atas, kami akan digesa untuk membina parameter permulaan projek ini Anda juga boleh menekan Enter untuk menggunakan lalai nilai.
Buat fail bernama index.html dalam projek dan tambahkan teg html ringkas di dalamnya, seperti yang ditunjukkan di bawah:
<!DOCTYPE html> <html> <head></head> <body> <h1>Hello, World!</h1> </body> </html>
3 Cipta pelayan
dalam Cipta a fail bernama server.js dalam projek dan gunakan modul http terbina dalam Node.js untuk mencipta pelayan web Kodnya adalah seperti berikut:
const http = require('http'); const fs = require('fs'); const path = require('path'); const server = http.createServer((req, res) => { // 处理首页请求 if (req.url === '/') { fs.readFile(path.join(__dirname, 'index.html'), (err, data) => { if (err) { res.writeHead(500); return res.end('Error loading index.html'); } res.writeHead(200); res.end(data); }); } else { // 处理其他静态文件请求 const filePath = path.join(__dirname, req.url); fs.readFile(filePath, (err, data) => { if (err) { res.writeHead(404); return res.end('404 not found'); } res.writeHead(200); res.end(data); }); } }); const port = process.env.PORT || 3000; server.listen(port, () => console.log(`Server running at http://localhost:${port}`));
4. Jalankan pelayan
. dalam arahan Masukkan arahan berikut dalam baris untuk memulakan pelayan:
node server.js
Buka http://localhost:3000 dalam penyemak imbas, dan anda dapat melihat bahawa pelayan sumber statik kami sedang berjalan.
Jika semuanya baik-baik saja, apabila kami melawati http://localhost:3000/ dalam penyemak imbas, ia akan memaparkan kandungan yang kami tulis dalam index.html.
5. Mengendalikan permintaan fail statik yang berbeza
Selain respons halaman utama, kami juga perlu mengendalikan permintaan untuk fail statik lain, seperti CSS, JS dan fail imej, dll. Ini boleh dilakukan dengan Tambah direktori sumber statik yang sepadan untuk meminta pelbagai jenis fail statik. Di sini, kami mencipta direktori bernama awam untuk menyimpan fail statik Kod berikut akan memetakan kandungan direktori ini ke direktori akar pelayan:
const server = http.createServer((req, res) => { if (req.url === '/') { // 处理首页请求省略 } else { // 处理其他静态文件请求 const filePath = path.join(__dirname, 'public', req.url); fs.readFile(filePath, (err, data) => { if (err) { res.writeHead(404); return res.end('404 not found'); } if (req.url.endsWith('.css')) { res.writeHead(200, { 'content-type': 'text/css' }); } if (req.url.endsWith('.js')) { res.writeHead(200, { 'content-type': 'application/javascript' }); } if (req.url.endsWith('.png')) { res.writeHead(200, { 'content-type': 'image/png' }); } res.end(data); }); } });
6 dan mudah untuk membina pelayan sumber statik menggunakan Node.js Dengan menggunakan modul http terbina dalam, anda boleh membuat pelayan asas dengan mudah untuk mengendalikan permintaan untuk sumber statik, seperti HTML, CSS, JS dan imej, dsb. Dalam proses pembangunan akan datang, kita boleh memilih rangka kerja pelayan yang sesuai mengikut keperluan kita sendiri untuk mencapai pelayan yang lebih cekap dan berkuasa.
Atas ialah kandungan terperinci Nodejs membina pelayan sumber statik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!