6

Действительно базовый вопрос, но я надеюсь получить некоторую ясность здесь.

Допустим, у меня есть статический веб-сайт с некоторыми HTML, CSS и базовым JavaScript. Нет веб-приложения для резервного копирования. При локальном тестировании веб-сайта, зачем мне запускать веб-сервер для доставки контента в браузер?

Не потому ли, что относительные пути в URL-адресах, используемых на веб-страницах, относятся к папке, из которой сервер извлекает контент, и, следовательно, различные файлы, включенные в центральную HTML-страницу, не могут быть точно найдены в файловой системе?

2 ответа2

4

Можно ли просматривать статические сайты без сервера?

Да.

Не удивительно

При локальном тестировании веб-сайта, зачем мне запускать веб-сервер для доставки контента в браузер?

Вы не

Не потому ли, что относительные пути в URL-адресах, используемых на веб-страницах, относятся к папке, из которой сервер извлекает контент, и, следовательно, различные файлы, включенные в центральную HTML-страницу, не могут быть точно найдены в файловой системе?

Нет.

4

Статические веб-сайты можно просматривать без сервера, локально, просто открыв их в веб-браузере, и вы можете создавать целые большие веб-сайты таким образом, если хотите. Но есть ограничения и недостатки, поэтому люди и системы используют локальные серверы для статических сайтов.

Одна из причин, по которой вы можете спросить, заключается в том, что использование многих популярных генераторов статического сайта, таких как Jekyll, требует, чтобы вы --serve системе - сохранять ее (или аналогичную), создавая локальный сервер для статического сайта. Но если он статический, зачем вам сервер?

Вот несколько причин:

  • безопасны только относительные ссылки (/ поскольку ссылка на дом не работает, как и ссылка на /css/something.css , поскольку / является корнем вашего компьютера, а не сайта);
  • в связи с этим, ссылки на уровне каталогов терпят неудачу (blog/ показывает файлы в этом каталоге вместо поиска blog/index.html или аналогичного);
  • и браузеры по-разному обрабатывают локальные файлы между собой, а также между ними и размещенными файлами (Chrome ограничивает вызовы AJAX, IE использует протокол, отличный от всех остальных, и т. д.).

Так что нет, тебе это не нужно, но оно тебе нужно, если ты этого хочешь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .