Сайт на Go не видит папку со статичными файлами
На локальном пк собрал проект и все успешно работало, до выгрузки на сервер. Загрузил на сервер с Ubuntu проект на GO, простенький сайт сделанный для тренировки. Тут я столкнулся с неожиданной проблемой. А именно - сайт не видит папку со css и js. Я пробовал уже по разному указывать пути и полный путь с корня, но никак не пойму где ошибся. На Windows все работало корректно.
Структура проекта:
- Папка проекта
- static
- css
- js
- templates
Код с маршрутами
func handleRequest() {
fileServer := http.FileServer(http.Dir("./static/"))
http.Handle("/static/", http.StripPrefix("/static/", fileServer))
http.HandleFunc("/", homePage)
http.HandleFunc("/tagDescription", tagDescriptionHandler)
err := http.ListenAndServe(":8090", nil)
if err != nil {
fmt.Println("Error starting server: ", err)
}
}
Код из шаблона
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Теги и финальный комментарий</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
<link rel="stylesheet" href="static/css/tag_style.css">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
</head>
<body>
<div id="tag_main">
<div id="title_tag_page">
<h1>Теги и финальный комментарий</h1>
</div>
<div id="tag_content">
<h3>Теги</h3>
<script src="static/js/tag_parser.js"></script>
<script src="static/js/tag_descriptions.js"></script>
<select id="tagSelect" class="form-select" aria-label=".form-select-sm exampl"></select>
<div id="tag_viem"></div>
<p id="descriptionSpan"></p>
<p id="description_popup"></p>
<textarea name="main_text" id="tag_text" class="form-control"></textarea>
<button id="tag_copy" class="btn btn-secondary">Копировать</button>
</div>
Ответы (1 шт):
Автор решения: LivsiMD
→ Ссылка
Все закончилось настройкой nginx. Добавил в настройки маршрут до папки с статикой и все завелось.
location /static/ {
alias /"path"/static/;
}