写一个静态服务器,并布置在端口3000上,根据用户的请求,响应不同的内容/index.html this is index.html Nogin.html this is login.html /register.html this is register.html 其他地址 this is 404
时间: 2024-02-23 11:15:08 浏览: 154
静态的简约登录界面login.html
好的,我可以为您提供一个使用 Node.js 搭建的简单静态服务器。请按照以下步骤进行操作:
1. 安装 Node.js 环境,可以在 Node.js 官网上下载对应的版本并安装。
2. 创建一个项目文件夹,比如命名为 "static-server",并在该文件夹下创建以下文件结构:
```
static-server/
├── index.html
├── login.html
├── register.html
├── 404.html
└── server.js
```
3. 在 "server.js" 文件中编写以下代码:
```javascript
const http = require('http');
const fs = require('fs');
const path = require('path');
const port = 3000;
const server = http.createServer((req, res) => {
// 获取请求的文件路径
const filePath = req.url === '/' ? '/index.html' : req.url;
// 拼接文件的绝对路径
const absPath = path.join(__dirname, filePath);
// 判断文件是否存在
if (fs.existsSync(absPath)) {
// 读取文件内容并响应给客户端
fs.readFile(absPath, (err, data) => {
if (err) {
res.writeHead(500);
res.end('500 Server Error');
} else {
res.writeHead(200);
res.end(data);
}
});
} else {
// 文件不存在,响应 404
res.writeHead(404);
res.end(fs.readFileSync(path.join(__dirname, '/404.html')));
}
});
server.listen(port, () => {
console.log(`Server running at http://localhost:${port}/`);
});
```
4. 在终端中进入项目文件夹,执行 `node server.js` 命令启动服务器。
5. 在浏览器中访问 `http://localhost:3000/`,即可看到 "index.html" 的内容;访问 `http://localhost:3000/login.html`,即可看到 "login.html" 的内容;访问 `http://localhost:3000/register.html`,即可看到 "register.html" 的内容;访问其他地址,则会显示 "404.html" 的内容。
注意:以上代码是一个简单的静态服务器,仅供参考,实际应用中可能需要更复杂的逻辑和处理方式。
阅读全文