Configuration: OSX 10.9.1, ruby 2.1.1 via RVM
I have created a new Jekyll site via the command jekyll new sitename
.
I then enter that directory and issue the command jekyll serve
.
I get the following notice:
Configuration file: /Users/George/sitename/_config.yml
Source: /Users/George/sitename
Destination: /Users/George/sitename/_site
Generating... done.
Server address: http://0.0.0.0:4000
Server running... press ctrl-c to stop.
However when attempting to visit http://localhost:4000/
or http://0.0.0.0:4000/
my browser endlessly attempts to load the page.
I have checked and the site was built correctly including an index.html
in /Users/George/sitename/_site/
.
The _config.yml
looks like so:
name: sitename
markdown: maruku
pygments: true
Does anyone know why Jekyll could be failing to serve the site but not throwing any errors?
Edit: If I change the port to 6000
and attempt to serve it then my browser instantly gives a page not found
so there must be something interfering with port 4000
however the issue still stands.
It's likely that something else is using port 4000
on your computer. You can find out by running the following command:
sudo lsof -i :4000
As you can run the server on another port, we'll move on to the next issue, setting the baseurl. In your _config.yml
you can specify which baseurl
to use, this will be the url from which all pages are served, so if you had baseurl: http://myawesomesite.com
, Jekyll will expect them to be accessed from that url.
As you're working locally, you have two options:
Set the baseurl
to /
in your _config.yml
:
baseurl: /
Launch Jekyll with the --baseurl
flag:
$ jekyll serve -w --baseurl '/'
Additionally, you could specify the port as a flag:
$ jekyll server -w --baseurl '/' --port 4000
If you want further information about what's going on when you run jekyll
, you can run the command with the --trace
flag:
$ jekyll server -w --trace
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With