How to Install Anchor CMS on a Debian 9 LAMP VPS
Using a Different System? Anchor CMS is a super-simple and extremely lightweight, free and open source Content Management System (CMS) Blog Engine tha
Anchor CMS is a super-simple and extremely lightweight, free and open source Content Management System (CMS) Blog Engine that supports editing content in Markdown or HTML, and is fully i18n compatible out of the box. Creating and modifying themes is as easy as writing some very simple PHP and HTML/CSS, so there are no new templating languages to learn. Anchor CMS weighs in at only 250KB (compressed) so it is the perfect solution for web developers and bloggers who are tired of bloatware and just want a simple and minimalist blogging engine that gets the job done without any extra complications.
In this tutorial we are going to install Anchor CMS on an Ubuntu 16.04 LAMP VPS using Apache web server, PHP 7.0, and a MariaDB database.
We will start by adding a new sudo
user.
First, log into your server as root
:
ssh root@YOUR_VULTR_IP_ADDRESS
Add a new user called user1
(or your preferred username):
adduser user1
When prompted, enter a secure and memorable password. You will also be prompted for your "Full Name" and some other details, but you can simply leave them blank by pressing Enter
.
Now check the /etc/sudoers
file to make sure that the sudoers
group is enabled:
visudo
Look for a section like this:
%sudo ALL=(ALL:ALL) ALL
This line tells us that users who are members of the sudo
group can use the sudo
command to gain root
privileges. It will be uncommented by default so you can simply exit the file.
Next we need to add user1
to the sudo
group:
usermod -aG sudo user1
We can verify the user1
group membership and check that the usermod
command worked with the groups
command:
groups user1
Now use the su
command to switch to the new sudo user user1
account:
su - user1
The command prompt will update to indicate that you are now logged into the user1
account. You can verify this with the whoami
command:
whoami
Now restart the sshd
service so that you can login via ssh
with the new non-root sudo user account you have just created:
sudo systemctl restart sshd
Exit the user1
account:
exit
Exit the root
account (which will disconnect your ssh
session):
exit
You can now ssh
into the server instance from your local host using the new non-root sudo user user1
account:
ssh user1@YOUR_VULTR_IP_ADDRESS
If you want to execute sudo without having to type a password every time, then open the /etc/sudoers
file again, using visudo
:
sudo visudo
Edit the section for the sudo
group so that it looks like this:
%sudo ALL=(ALL) NOPASSWD: ALL
Please note: Disabling the password requirement for the sudo user is not a recommended practice, but it is included here as it can make server configuration much more convenient and less frustrating, especially during longer systems administration sessions. If you are concerned about the security implications, you can always revert the configuration change to the original after you finish your administration tasks.
Whenever you want to log into the root
user account from within the sudo
user account, you can use one of the following commands:
sudo -i
sudo su -
You can exit the root
account and return back to your sudo
user account any time by simply typing the following:
exit
Before installing any packages on the Ubuntu server instance, we will first update the system.
Make sure you are logged in to the server using a non-root sudo user and run the following commands:
sudo apt-get update
sudo apt-get -y upgrade
Install the Apache web server:
sudo apt-get -y install apache2
Then use the systemctl
command to start and enable Apache to execute automatically at boot time:
sudo systemctl enable apache2
sudo systemctl start apache2
Check your Apache default site configuration file to ensure that the DocumentRoot
directive points to the correct directory:
sudo vi /etc/apache2/sites-enabled/000-default.conf
The DocumentRoot
configuration option will look like this:
DocumentRoot "/var/www/html"
We now need to enable the mod_rewrite
Apache module, so ensure that your Apache default site configuration file is still open, and add the following Directory
Apache directives just before the closing </VirtualHost>
tag, so that the end of your configuration file looks like this:
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
The most important directive shown above is AllowOverride All
.
Now save and exit the file, and enable the mod_rewrite
Apache module:
sudo a2enmod rewrite
We will restart Apache at the end of this tutorial, but restarting Apache regularly during installation and configuration is certainly a good habit, so let's do it now:
sudo systemctl restart apache2
We can now install PHP 7.0 along with all of the necessary PHP modules required by Anchor CMS:
sudo apt-get -y install php php-gd php-mbstring php-common php-mysql php-imagick php-xml libapache2-mod-php php-curl php-tidy php-zip
Install MySQL database server:
sudo apt-get -y install mysql-server
During the MySQL server installation, make sure you enter a secure password for the MySQL root
user. This root
user is different to the root
user in Ubuntu as it is only used for connecting to your database server with full privileges.
Start and enable MySQL server to execute automatically at boot time:
sudo systemctl enable mysql
sudo systemctl start mysql
Secure your MySQL server installation:
sudo mysql_secure_installation
When prompted, enter the password you created for the MYSQL root
user during installation. Simply answer "Y" to all of the other yes/no questions as the default suggestions are the most secure options.
Log into the MySQL shell as the MySQL root
user by running the following command:
sudo mysql -u root -p
To access the MySQL command prompt, simply enter the MySQL root
password when prompted.
Run the following queries to create a MySQL database and database user for Anchor CMS:
CREATE DATABASE anchor_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'anchor_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON anchor_db.* TO 'anchor_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
You can replace the database name anchor_db
and username anchor_user
with something more to your liking, if you prefer. Also, make sure that you replace "UltraSecurePassword" with an actually secure password.
Change your current working directory to the default web directory:
cd /var/www/html/
If you get an error message saying something like 'No such file or directory'
then try the following command:
cd /var/www/ ; sudo mkdir html ; cd html
Your current working directory should now be: /var/www/html/
. You can check this with the pwd
(print working directory) command:
pwd
Now use wget
to download the Anchor CMS installation package:
sudo wget https://github.com/anchorcms/anchor-cms/archive/0.12.3a.zip
Please note: You should definitely check for the most recent version by visiting the Anchor CMS download page.
List the current directory to check that you have successfully downloaded the file:
ls -la
Remove index.html
:
sudo rm index.html
Let's quickly install unzip
so we can unzip the file:
sudo apt-get -y install unzip
Now uncompress the zip archive:
sudo unzip 0.12.3a.zip
Move all of the installation files to the web root directory:
sudo mv anchor-cms-0.12.3a/* /var/www/html
Change ownership of the web files to avoid any permissions problems:
sudo chown -R www-data:www-data * ./
Restart Apache again:
sudo systemctl restart apache2
Anchor CMS requires us to use composer
to download some plugins so we first need to install composer
:
sudo apt-get -y install composer
Now make sure you are in the webroot directory:
cd /var/www/html
Run composer using the www-data
user:
sudo -u www-data composer install -d /var/www/html/
You should see some warning messages from composer
about not being able to write to the cache, but don't worry too much about that as everything should still install just fine.
We're now ready to move on to the final step.
It's time to visit the IP address of your server instance in your browser, or if you've already configured your Vultr DNS settings (and given it enough time to propagate) you can simply visit your domain instead.
To access the Anchor CMS installation page, enter your Vultr instance IP address into your browser address bar, followed by /index.php
:
http://YOUR_VULTR_IP_ADDRESS/index.php
Most of the installation options are self explanatory, but here are a few pointers to help you along:
On the Anchor CMS landing page, simply click on the Run the installer
button to start the installation process.
Select your Language
and Timezone
and click on the Next Step
button.
On the Database Details
page, enter the following database values:
Database Host: localhost
Port: 3306
Username: anchor_user
Password: UltraSecurePassword
Database Name: anchor_db
Table Prefix: anchor_
Collation: utf8_unicode_ci
Click Next Step
to continue.
On the Site metadata
page, enter the following details:
Site Name: <your site name>
Site Description: <a site description>
Site Path: /
Click Next Step
to continue.
Next enter appropriate admin login details:
Username: admin
Email Address: <admin email address>
Password: <admin password>
Click on the Complete
button to finalize the installation.
You will see a bright green page with the message Install complete!
.
To access the admin section simply click on the Visit your admin panel
button and enter your username and password. If you aren't redirected to the admin login page, you can enter the admin address manually:
http://YOUR_VULTR_IP_ADDRESS/admin/panel
For security reasons, make sure you delete the /install/
directory from the webroot directory:
sudo rm -rf ./install/
You are now ready to start adding your content and configuring the look and feel of your site. Make sure you check out the Anchor CMS documentation for more information about how to build and configure your site.
Using a Different System? Anchor CMS is a super-simple and extremely lightweight, free and open source Content Management System (CMS) Blog Engine tha
Using a Different System? Anchor CMS is a super-simple and extremely lightweight, free and open source Content Management System (CMS) Blog Engine tha
Using a Different System? BlogoText CMS is a simple and lightweight, free and open source Content Management System (CMS) and minimalist blog engine
Using a Different System? Anchor CMS is a super-simple and extremely lightweight, free and open source Content Management System (CMS) Blog Engine tha
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.
Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.
Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.
Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…
Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.
Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.
Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.
Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.
Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį