How to Install Typesetter CMS on CentOS 7
Typesetter is an open source CMS written in PHP focused on ease of use with True WYSIWYG editing and flat-file storage.
In this article, we will be installing Typesette on CentOS 7.
Prerequisites
- A fresh Vultr CentOS 7 x64 server instance.
- A sudo user.
- The
EPEL
yum repository.
Step 1: Install the EPEL YUM repo and update the system
Log in to your server via SSH using the sudo user to install epel
, update the system, and restart to apply the updates.
sudo yum install epel-release -y
sudo yum update -y && sudo shutdown -r now
Step 2: Install Apache
sudo yum install httpd -y
It is recommended to remove/disable the Apache default welcome page in production environments.
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Prevent Apache from listing web directory files to visitors:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Start the Apache service and enable it to auto-start on boot
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Step 3: Install PHP 7.1 and necessary extensions
Typesetter requires PHP 5.3 or later. In order to get better performance, we will install PHP 7.1 and its necessary extensions for Typesetter as follows:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-mbstring php71w-xmlrpc php71w-gd php71w-xml php71w-intl php71w-cli php71w-mcrypt -y
Step 4: Install Typesetter
Download and uncompress the latest stable release of Typesetter (which is 5.0.3
at the time this article was written) from official Typesetter download page:
cd
wget https://www.typesettercms.com/Special_gpEasy?cmd=download -O Typesetter-5.0.3.zip
sudo yum install unzip -y
sudo unzip Typesetter-5.0.3.zip -d /var/www/html
Set the ownership for the /var/www/html/Typesetter/data
directory as follows:
sudo chown -R apache:apache /var/www/html/Typesetter/data
Create an Apache virtual host for Typesetter:
cat <<EOF | sudo tee -a /etc/httpd/conf.d/typesetter.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/Typesetter/
ServerName typesetter.example.com
ServerAlias www.typesetter.example.com
<Directory /var/www/html/Typesetter/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/typesetter.example.com-error_log
CustomLog /var/log/httpd/typesetter.example.com-access_log common
</VirtualHost>
EOF
Restart the Apache service to apply your modifications:
sudo systemctl restart httpd.service
Modify firewall rules in order to allow web access:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Once you your browser to http://203.0.113.1
for the first time, you will be presented with Typesetter installation wizard. In the Checking server...
section, make sure that all test items are passed. In the Configuration
section, input your own admin credentials:
- Website Title:
<Your Site Title>
- Email Address:
<admin@example.com>
- Admin Username:
<your-admin-name>
- Admin Password:
<your-admin-password>
- Repeat Password:
<your-admin-password>
Finally, click the Install
button to finish the installation. In the Installation - v5.0.3
page, click the View your web site
link to start navigating your Typesetter site.
For security purposes, you should delete the /var/www/html/Typesetter/include/install/install.php
file after the installation:
sudo rm /var/www/html/Typesetter/include/install/install.php
That's it. Thanks for reading.