---
layout: docs
title: Configuration
prev_section: structure
next_section: frontmatter
---
Jekyll allows you to concoct your sites in any way you can dream up, and it’s thanks to the powerful and flexible configuration options that this is possible. These options can either be specified in a `_config.yml` file placed in your site’s root directory, or can be specified as flags for the `jekyll` executable in the terminal.
## Configuration Settings
### Global Configuration
The table below lists the available settings for Jekyll, and the various options
(specifed in the configuration file) and flags
(specified on the command-line) that control them.
Setting | Options and Flags |
---|---|
Site Source Changes the directory where Jekyll will look to transform files |
|
Site Destination Changes the directory where Jekyll will write files to |
|
Safe Disables custom plugins. |
|
Exclude A list of directories and files to exclude from the conversion |
|
Include A list of directories and files to specifically include in the conversion. |
|
Setting | Options and Flags |
---|---|
Regeneration Enables auto-regeneration of the site when files are modified. Off by default. |
|
URL Sets |
|
Markdown Uses RDiscount or |
|
Pygments Enables highlight tag with Pygments. |
|
Future Publishes posts with a future date |
|
LSI Produces an index for related posts. |
|
Permalink Controls the URLs that posts are generated with. Please refer to the Permalinks page for more info. |
|
Pagination Splits your posts up over multiple subdirectories called "page2", "page3", ... "pageN" |
|
Limit Posts Limits the number of posts to parse and publish |
|
Setting | Options and Flags |
---|---|
Local Server Port Changes the port that the Jekyll server will run on |
|
Local Server Hostname Changes the hostname that the Jekyll server will run on |
|
Base URL Serve website from a given base URL |
|
This will either lead to parsing errors, or Jekyll will revert to the default settings. Use spaces instead.