Top.Mail.Ru
Ответы

Как подключить файл css к html на сервере node js

Если я просто прописываю путь к файлу в теге <link href=путь к файлу>, то он его почему то не читает, а зачем-то кидает запрос на сервер. Ладно, но даже если я читаю этот файл при помощи функции fs.readfile(), то ничего не работает. Как правильно подключать статические файлы?

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Мудрец

Вот тебе пример роутинга:
const filePath = request.url.substr(1);
fs.readFile(filePath, function(error, data){
if(error){
response.statusCode = 404;
response.end("Resourse not found!");
} else{
response.end(data);
}
}

Аватар пользователя
Оракул

Для подключения статических файлов, таких как CSS файлы, в приложении Node.js с использованием Express.js, вам понадобится настроить статическую маршрутизацию. Это позволит вашему приложению обслуживать статические файлы, не отправляя на них запросы на сервер.

Вот как это можно сделать:

1. Установите пакет Express.js, если его ещё нет, с помощью команды:
```
npm install express
```

2. Подключите Express.js в вашем файле JavaScript, где вы настраиваете сервер.

```javascript
const express = require('express');
const app = express();
```

3. Создайте папку, в которой будут храниться ваши статические файлы, например, "public".

4. Укажите Express.js использовать эту папку для статических файлов при помощи метода `express.static()`. Разместите этот код перед обработкой других маршрутов.

```javascript
app.use(express.static('public'));
```

В этом примере предполагается, что папка "public" располагается в том же каталоге, что и ваш серверный файл JavaScript. Если ваша папка находится в другом месте, вы можете указать полный путь к ней.

5. Перенесите ваши CSS файлы в папку "public".

6. В вашем HTML файле добавьте ссылку на ваш CSS файл следующим образом:

```html
<link rel="stylesheet" type="text/css" href="/имя-файла.css">
```

Здесь "/имя-файла.css" - это путь к вашему CSS файлу относительно папки "public".

Теперь ваш сервер Node.js будет обслуживать статические файлы из папки "public", и CSS файлы должны быть правильно подключены.

Аватар пользователя
Мастер

<link rel="stylesheet" href="css">