This is the default page used to test the functionality of Halogen after installation. If you are reading this page, it means that Halogen was installed correctly and is serving content. Before putting your HTTP server into use, please replace this file, as well as the currently installed (dummy) SSL certificate.
If you are a normal user and do not know what this page is, this likely means the owner of this website has not yet configured the server or is performing maintenance. If this problem continues, please contact the owners of this site.
The primary configuration for halogen is stored in/etc/halogen/halogen.conf, unless otherwise specified by the --config argument.
Site configurations are stored in their respective servers webroots in the format [server webroot]/www/[site name]/site.conf.
Each server can specify it's own individual webroot, or no webroot if the server does not serve content that is locally stored.
Primary configuration (default):
/etc/halogen/halogen.conf
Server file structure:
halogen/
├── log
│ ├── access.log
│ └── server.log
├── ssl
│ ├── [ca]
│ ├── [cert]
│ └── [key]
└── www
└── [site name]
├── root
│ ├── index.html
│ └── [site content]
└── site.conf
If you're not sure how to get started, here is a quick set of steps to get your server ready for use.
Required packages:
socat, nano
Halogen relies on socat for internal port forwarding, and will not start unless it is installed on your system. Please make sure your system is equipped with the latest version of socat.
Halogen's built-in configuration editor defaults to use nano, however you can specify any editor with the -ed flag.
By default, halogen provides a "dummy" certificate in the /var/halogen/ssl path. This certificate is not intended for use in production.
You must replace it with a real TLS Certificate before exposing halogen to the internet.
There are many ways to obtain a TLS certificate for your website(s). If you are not sure how to obtain one, Certbot is a common choice for generating free certificates via letsencrypt.
Once you have obtained your certificate, you can point halogen to it by editing halogen.conf and setting the cert, key and ca properties of ssl_config. You can edit this configuration directly through halogen with:
halogen edconfig
Upon initialization, halogen creates the default site binded to localhost and 127.0.0.1 (this is what you are currently seeing). To create your new website, you can either edit the default site with halogen edsite secure default (where "secure" is the server name), or create a new site with halogen mksite secure mysite.
Once editing your site, edit the hostnames property to include whatever hostnames you will be accessing your site from.
To import static content to your site, you can move your files to [server root]/www/[you site]/root. If you are not sure where this path is, you can drop into it using:
halogen goto site secure <your site>
Now that your site and TLS certificate are ready, you can configure halogen to bind to whatever ports are needed by adjusting the port property in halogen.conf.