Flextype CMS is a Flat-File CMS i.e. needs no database. It is written in PHP. Earlier we listed some flat-file CMS. In that list, on 20th you’ll find Monstra CMS. That Monstra CMS now has been Flextype CMS. Octopress is not easy to easy to handle by many – it is actually static site generator. WordPress is perfect for running blogs like our this site. But involving MySQL is really serious matter and only practical when there is hourly human monitoring, definite return of investment. Small business sites, personal sites, portfolio sites are easy to maintain with a flat-file CMS. Many of the flat-file CMS are paid and cost makes them out of question to consider. PHP makes Flextype dynamic and easy to many developers, freelancers, web developers. Flextype has official resources on the following webpages:
1 2 | http://flextype.org/ https://github.com/flextype/flextype |
At present, they have 45 plugins and 1 official theme.
How to Install Flextype on Ubuntu Server (Apache Webserver)
On a blank server, one needs to follow our two guides :
---
- How To Install Apache2 on Ubuntu 18.04 With Let’s Encrypt, HTTP/2, HSTS
- Install PHP 7.2 on Ubuntu 18.04 LTS Running Apache2
… to proceed and install Flextype (need not to install MySQL server). If you follow the above guides, then next jump to Install Flextype on Ubuntu Server sub-header below. We are mentioning some steps to install Apache, PHP for the sake of completeness of the article:
1 2 3 4 5 6 7 8 9 10 11 | apt update && apt upgrade ## apache2 from ubuntu repository apt install apache2 sudo systemctl stop apache2.service sudo systemctl start apache2.service sudo systemctl enable apache2.service apt install software-properties-common sudo add-apt-repository ppa:ondrej/php apt update && apt upgrade apt install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-cli php7.2-curl php7.2-zip nano /etc/php/7.2/apache2/php.ini |
Find the following lines and make sure to have values like shown :
1 2 3 4 5 6 | file_uploads = On allow_url_fopen = On memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = America/Chicago |
Restart Apache2 :
1 | systemctl restart apache2.service |
Install Flextype on Ubuntu Server
Now, we need to wget
the latest version from Flextype’s GitHub repo :
1 | https://github.com/flextype/flextype/releases |
Current version is flextype-0.7.0
. We can choose between plain Flextype or Flextype with Admin plugin. We need to do the following steps :
1 2 3 4 5 6 7 8 9 | sudo mkdir /var/www/html/flextype cd /var/www/html/flextype wget https://github.com/flextype/flextype/releases/download/v0.7.2/flextype-0.7.2-admin-0.2.0.zip ## wget https://github.com/flextype/flextype/releases/download/v0.7.2/flextype-0.7.2.zip apt install unzip unzip flextype-0.7.2-admin-0.2.0.zip ls -al rm flextype-0.7.2-admin-0.2.0.zip ls -al |
Then run the commands below to set the proper permissions for Flextype to function properly :
1 2 | sudo chown -R www-data:www-data /var/www/html/flextype/ sudo chmod -R 755 /var/www/html/flextype/ |
The site/
directory needs to be 777 :
1 | chmod -R 0777 site/ |
In the virtual host directory (/etc/apache2/sites-available/
), you need minimum one configuration file like this :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <VirtualHost *:80> ServerAdmin admin@example.com DocumentRoot /var/www/html/flextype/ ServerName example.com ServerAlias www.example.com <Directory /var/www/html/flextype/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/www/html/flextype/> RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*) index.php [PT,L] </Directory> </VirtualHost> |
We recommend to follow our earlier mentioned guide to Install Apache2 on Ubuntu 18.04 With Let’s Encrypt to have complete HTTPS setup. Essentially you need to do :
1 2 3 4 5 | apt install python-certbot-apache sudo add-apt-repository ppa:certbot/certbot apt update apt install python-certbot-apache sudo certbot --apache -m admin@example.com -d example.com -d www.example.com |
Make sure that the following modules are activated :
1 2 3 | sudo a2enmod rewrite sudo a2enmod proxy proxy_fcgi rewrite sudo systemctl restart apache2.service |
Flextype itself has no installation. Just visit the IP or domain name to view the site. Update site configuration by editing file /site/config/site.yaml
:
1 2 3 4 5 | title: "Site title here" description: "Site description here" author: email: "admin@thecustomizewindows.com" name: "Abhishek Ghosh" |
To install plugin, just unzip them to /site/plugins/
. To install theme, unzip them to /site/themes/
. Then go to /site/config/system.yaml
and update the key theme:
with the intended theme name, like :
1 | theme: theme-name |
You’ll get more help on official documentation :
1 | http://flextype.org/documentation |