Вынужден использовать абсолютные URL в Jekyll - PullRequest
0 голосов
/ 06 октября 2018

Я пытаюсь создать персональную домашнюю страницу с Jekyll, используя домен, предоставленный моим университетом.

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

Файл _config.yml определяет, как Jekyllгенерирует ссылки в файле index.html, который является домашней страницей._config.yml выглядит следующим образом ...

title: Homepage | Ishank Juneja 
email: ishankjuneja@gmail.com
description: >- # this means to ignore newlines until "baseurl:"
Personal homepage Beta version
baseurl: "foobar" # the subpath of your 
site, e.g. /blog
url: "http://home.iitb.ac.in/~ishankjuneja" # the base hostname & protocol for your site, e.g. 
http://example.com
twitter_username: ishankjuneja
github_username:  ishank-juneja

# Build settings
markdown: kramdown
theme: minima
plugins:
- jekyll-feed

Примером (многих) ссылок, которые он генерирует в файле index.html, является

<link rel="stylesheet" href="/foobar/assets/main.css"> 

Эта ссылка объяснил мне, что на самом деле это абсолютный путь, который не показался мне проблемой, но дерево каталогов в службе веб-хостинга выглядит так:

public_html
├── 404.html
├── about
│   └── index.html
├── assets
│   ├── main.css
│   └── minima-social-icons.svg
├── feed.xml
├── index.html
└── jekyll
    └── update
        └── 2018
            └── 10
                └── 04
                    └── test-post.html

URLдля моей домашней страницы http://home.iitb.ac.in/~ishankjuneja/ связан с папкой public_html, поэтому путь к main.css выше будет неправильным.Что-то вроде href="assets/main.css" работает хорошо, но, похоже, я ничего не могу набрать _config.yml, чтобы получить этот результат.

1 Ответ

0 голосов
/ 06 октября 2018

В конфигурации вы должны правильно настроить baseurl:

baseurl: "~ishankjuneja"

Затем используйте

 {{site.baseurl}}page.url
...