Относительные пути к пакетам в index.html - PullRequest
0 голосов
/ 24 октября 2019

У меня небольшое приложение svelte, доступ к которому осуществляется через обратный прокси-сервер. Доступ к приложению осуществляется по пути, например http://host/appname,, а правило прокси-сервера извлекает содержимое из http://localhost:port. Приложение svelte прослушивает тот же порт.

Когда я загружаю http://host/appname/index.html, файл извлекается, как и ожидалось, но пакеты js и css имеют абсолютный путь, например «/bundle.js». Это заставляет браузер пытаться получить http://host/bundle.js,, что, конечно, не удается. Если бы ссылки в index.html были относительными, например, «./bundle.js», все работало бы лучше, поскольку браузер расширил бы его до http://host/appname/bundle.js,, где находятся файлы.

Как я могу заставить svelte создавать относительные пути к моим связкам?

1 Ответ

1 голос
/ 24 октября 2019

Вы можете установить свой собственный шаблон public/index.html и определить ссылки на пакеты CSS и JS в соответствии с вашим проектом. Например, если оба пакета также выводятся в каталог public:

<!doctype html>
<html>
<head>
    <meta charset='utf-8'>
    <meta name='viewport' content='width=device-width'>

    <title>Svelte app</title>

    <link rel='icon' type='image/png' href='favicon.png'>
    <link rel='stylesheet' href='bundle.css'>

    <script defer src='bundle.js'></script>
</head>

<body>
</body>
</html>

Обратите внимание, что вы можете установить выходной каталог для обоих пакетов (CSS & JS) в файле конфигурации объединения.

...