首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在我的服务器上路由css的问题

在我的服务器上路由css的问题
EN

Stack Overflow用户
提问于 2019-01-24 06:32:57
回答 1查看 44关注 0票数 0

我正在为我的网页构建一个后端,文件结构如下所示:

代码语言:javascript
运行
复制
public
  css
    main.css
    main_b.css
  index.hbs
  index_b.hbs
server
  server.js

在索引文件中引用样式工作表的链接属性包括:

Rel=“样式表”type=文本/css“href=”main.css Rel=“样式表”type=文本/css“href=”main_b.css

这是我的server.js:

代码语言:javascript
运行
复制
const path = require('path');
const fs = require('fs');

const express = require('express');

const app = express();

const hbs = require('hbs');
    
hbs.registerPartials(path.join(__dirname, '../public/partials'));
app.set('view engine', 'hbs');

app.use(express.static(path.join(__dirname, '../public/css')));
    
// activity logger 
app.use((req, res, next) => {
  const now = new Date().toString();
  const logEntry = `${now}: ${req.headers.host} ${req.method}${req.url}`;
  fs.appendFile(path.join(__dirname, '../server/server.log'), logEntry.concat('\n'), (error) => {
    if (error) {
      console.log(error);
    }
  });
  process.env.route = req.path;
  next();
});

app.get('*', (req, res) => {
  switch (process.env.route) {
    case '/': // home page
      res.render('../public/index.hbs');
      break;
    case '/b': // basic layout 
      res.render('../public/index_b.hbs');
      break;
    
    default: // unknown routes
      res.render('../public/index.hbs');
  }
});

app.listen(3000);

在请求localhost:3000时,日志条目可以:

清华2019年1月24日07:57:08 GMT+0200 (东欧标准时间):本地:3000 GET/

在请求localhost:3000/abc时,日志条目也可以:

清华2019年1月24日07:57:08 GMT+0200 (东欧标准时间):本地主机:3000 GET/abc

在使用localhost:3000/abc/def等子路由测试请求时,css没有呈现,日志条目是:

清华1月24日2009:08:55 GMT+0200 (东欧标准时间):本地主机:3000 GET/abc/def清华1月24日2019 08:04:56 GMT+0200 (东欧标准时间):本地主机:3000 GET/abc/teamk-resreet.css清华1月24日2009:04:56 GMT+0200 (东欧标准时间):本地主机:3000 GET/abc/main.css

我看到部分路由用于修改css查找路径,并试图通过Express.static()中选项对象的索引和重定向属性来解决这个问题,但没有成功。

很高兴收到一些指示/参考,否则我可能应该重构我的路由查询方法。

EN

回答 1

Stack Overflow用户

发布于 2019-01-25 23:53:26

我发现我的代码有问题,

在索引文件中,应通过包含以下内容的链接属性引用样式工作表:

Rel=“样式表”type=文本/css“href=”/main.css Rel=“样式表”type=文本/css“href=”/main_b.css

,它们的名称以“/”作为正确查找URL结构的前缀。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54340610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档