|
|
10 years ago | |
|---|---|---|
| cache | 10 years ago | |
| config | 11 years ago | |
| system | 10 years ago | |
| themes | 10 years ago | |
| .htaccess | 11 years ago | |
| .updateignore | 11 years ago | |
| COPYRIGHT.txt | 11 years ago | |
| LICENSE.txt | 12 years ago | |
| README.md | 10 years ago | |
| composer.json | 11 years ago | |
| composer.lock | 11 years ago | |
| favicon.ico | 12 years ago | |
| humans.txt | 11 years ago | |
| index.php | 11 years ago | |
| robots.txt | 11 years ago | |
HTMLy is an open source databaseless blogging platform prioritizing simplicity and speed (Flat-File Blog). And because HTMLy also manage the contents, then it can be referred as a Flat-File CMS.
You do not need to use a VPS to run HTMLy, shared hosting or even free hosting should work as long as the host supports at least PHP 5.3.
HTMLy requires PHP 5.3 or greater.
if you have openssl on your server, use the Installer. read the Instructions. If you don't have openssl, download the latest version, extract it, then upload the extracted files to your server. Make sure the installation folder is writeable by your server.
Rename config.ini.example inside the config folder to config.ini (or you can create a new config/config.ini file) then change the site settings there.
Create YourUsername.ini inside the config/users folder or simply rename the username.ini.example file and write down your password there:
password = YourPassword
HTMLy support admin user role either, simply add the following to your choosen user:
role = admin
A user with the admin role can edit/delete all users' posts.
You can login to admin panel at www.example.com/login.
Here a example configuration
$HTTP["url"] =~ "^/config" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^/system/includes" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^/system/admin/views" {
url.access-deny = ( "" )
}
url.rewrite-once = (
"^/(themes|system|vendor)/(.*)" => "$0",
"^/(.*\.php)" => "$0",
# Everything else is handles by htmly
"^/(.*)$" => "/index.php/$1"
)
Here a basic configuration for nginx.
server {
listen 80;
server_name example.com www.example.com;
root /usr/share/nginx/html;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log error;
index index.php;
location ~ /config/ {
deny all;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
In addition by using the built-in editor in the admin panel, you can also write markdown files offline and then upload them (see naming convention below) into the content/username/blog folder (the username must match YourUsername.ini above).
For static pages you can upload it to the content/static folder.
When you write a blog post and save it via the admin panel, HTMLy automatically create a .md file extension with the following name, example:
2014-01-31-12-56-40_tag1,tag2,tag3_databaseless-blogging-platform-flat-file-blog.md
Here's the explanation (separated by an underscore):
2014-01-31-12-56-40 is the published date. The date format is yyyy-mm-dd-hh-mm-sstag1,tag2,tag3 are the tags, separated by commasdatabaseless-blogging-platform-flat-file-blog is the URLFor static pages, we use the following format:
content/static/about.md
That means the URL is about.
So if you write it offline then you must name the .md file as above.
For static sub pages, we use the following format:
content/static/about/me.md
That means the URL is about/me.
If you write it offline, for the title of the post you need to add a title in the following format:
<!--t Here is the post title t-->
Paragraph 1
Paragraph 2 etc.
So wrap the title with HTML comment with t for both side.
Visit HTMLy Demo.
People who give references and inspiration for HTMLy:
For copyright notice please read COPYRIGHT.txt. HTMLy licensed under the GNU General Public License Version 2.0 (or later).