2016-01-05 5 views
0

У меня есть странная проблема с моей файловой структурой. По какой-то причине после создания сервера и его запуска я не могу запустить index.html, если он не находится в папке. Браузер просто показывает «Невозможно GET /». То же самое можно сказать о моих JS-файлах, которые используются в index.html. Если они не находятся в папках, а не в корневом каталоге, они не будут загружаться в index.html. Это нормально или это связано с тем, как я установил свой файл server.js?Файлы не загружаются, если в корневом каталоге?

Вот код:

var express = require('express'); 
var path = require('path'); 

var app = express(); 

app.use(express.static(path.join(__dirname, './views'))); 

app.listen(8000, function() { 
    console.log("Listening on Port 8000"); 
}) 

Структура папки/файла:

Root Directory 
    - node_modules 
    - views 
     -js 
      -script.js 
     - pages 
      -about.html 
      -contact.html 
      -home.html 
     - index.html 
    - server.js 

Проблема заключается в том, когда структура файла:

Root Directory 
    - node_modules 
    - pages 
     -about.html 
     -contact.html 
     -home.html 
    - index.html 
    - script.js 
    - server.js 

express.static является также указывая на страницы вместо представлений.

Любые предложения относительно того, почему это так? Заранее спасибо.

ответ

0

просто express.static(path.join(__dirname, './views')) будет обслуживать все файлы в папке views если вы идете на /pages/index.html. это проверит папку view на /page/index.html, если они есть index.html, он будет обслуживать вас этот файл, иначе он проверит, есть ли у вас какая-либо логика маршрута управления Вы можете установить multi serve-static.

Смежные вопросы