{"id":2919,"date":"2018-02-23T13:20:47","date_gmt":"2018-02-23T10:20:47","guid":{"rendered":"https:\/\/www.howtoforge.com\/tutorial\/centos-neos-cms-apache-installation\/"},"modified":"2018-02-23T13:20:47","modified_gmt":"2018-02-23T10:20:47","slug":"how-to-install-neos-cms-on-centos-7","status":"publish","type":"post","link":"https:\/\/afaghhosting.net\/blog\/how-to-install-neos-cms-on-centos-7\/","title":{"rendered":"How to Install NEOS CMS on CentOS 7"},"content":{"rendered":"<p>Neos is a free and open source content management system written in PHP and uses its own framework flow. Neos CMS provides a customizable, extensible and easy to use web interface to edit web content easily. You don&#8217;t need expensive training or time consuming tutorials on how to operate the CMS. Neos provides a rich set of features like, Users and Roles, Package Manager, Multisite capabilities, Human readable URLs, Reviews and Workflows, Templates and many more.<\/p>\n<h3 id=\"features\">Features<\/h3>\n<ul>\n<li>Run multiple sites in a single instance.<\/li>\n<li>Provides human readable out of the box. No requirements or setup needed.<\/li>\n<li>Allow us to create a user, assign roles and restrict access to administrative and editing features.<\/li>\n<li>Neos is built for easy deployments and the use of version control systems in mind.<\/li>\n<\/ul>\n<p>In this tutorial, I will explain how to install and configure Neos CMS on CentOS 7 server.<\/p>\n<h2 id=\"requirements\">Requirements<\/h2>\n<ul>\n<li>A server running CentOS 7.<\/li>\n<li>A not-root user with sudo privileges.<\/li>\n<\/ul>\n<h2 id=\"getting-started\">Getting Started<\/h2>\n<p>Before starting, it is recommended to update the system with the latest version. You can do this with the following command:<\/p>\n<p class=\"command\">sudo yum update -y<\/p>\n<p>Once your system is updated, restart the system to apply all the changes.<\/p>\n<h2 id=\"install-lamp-server\">Install LAMP Server<\/h2>\n<p>Neos runs on a web server, is written in PHP and uses MariaDB to store its data. So you will need to install LAMP server on your system.<\/p>\n<p>First, install Apache web server using the following command:<\/p>\n<p class=\"command\">sudo yum install httpd -y<\/p>\n<p>Next, start Apache web server and enable it to start at boot time using the following command:<\/p>\n<p class=\"command\">sudo systemctl start httpd<br \/>sudo systemctl enable httpd<\/p>\n<p>By default, the latest version of the MariaDB is not available in CentOS 7. so you will need to install MariaDB repository to your system.<\/p>\n<p>You can add the MariaDB repository with the following command:<\/p>\n<p class=\"command\">curl -sS https:\/\/downloads.mariadb.com\/MariaDB\/mariadb_repo_setup | sudo bash<\/p>\n<p>Next, install MariaDB by running the following command:<\/p>\n<p class=\"command\">sudo yum install MariaDB-server MariaDB-client -y<\/p>\n<p>Once MariaDB is installed, start MariaDB service and enable it to start on boot using the following command:<\/p>\n<p class=\"command\">sudo systemctl start mariadb<br \/>sudo systemctl enable mariadb<\/p>\n<p>Neos works on any version of PHP greater than 7.0. By default, PHP 7 is not included in CentOS 7 default repository. So you will need to add EPEL and Webtatic repository in your system.<\/p>\n<p>You can install EPEL and Webtatic repository using the following command:<\/p>\n<p class=\"command\">sudo yum install epel-release -y<br \/>sudo rpm -Uvh https:\/\/mirror.webtatic.com\/yum\/el7\/webtatic-release.rpm<\/p>\n<p>Next, install PHP7.0 with other required libraries using the following command:<\/p>\n<p class=\"command\">sudo yum install php71w php71w-mbstring php71w-pdo_mysql php71w-cli php71w-tokenizer php71w-pecl-imagick php71w-xml php71w-pecl-imagick php71w-mcrypt php71w-opcache php71w-imap php71w-process php71w-intl -y<\/p>\n<p>Once all the packages are installed, you can check the version of the PHP using the following command:<\/p>\n<p class=\"command\">php -v<\/p>\n<p>You should see the following output:<\/p>\n<pre>PHP 7.1.5 (cli) (built: May 12 2017 21:54:58) ( NTS )&#13;\nCopyright (c) 1997-2017 The PHP Group&#13;\nZend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies&#13;\n<\/pre>\n<p>Next, you will need to make some changes inside php.ini file. You can do this by running the following command:<\/p>\n<p class=\"command\">sudo nano \/etc\/php.ini<\/p>\n<p>Make the following changes:<\/p>\n<pre>date.timezone = Asia\/Kolkata&#13;\nmemory_limit = 250M&#13;\nxdebug.max_nesting_level = 500&#13;\n<\/pre>\n<p>Save and close the file, when you are finished.<\/p>\n<h2 id=\"configure-the-database\">Configure the Database<\/h2>\n<p>By default, MariaDB is not secured, so you will need to secure it first. You can do this by running the mysql_secure_installation script. This script will set a root password, remove an anonymous user, disallow root login and remove test database:<\/p>\n<p class=\"command\">sudo mysql_secure_installation<\/p>\n<p>Answer all the questions as follows:<\/p>\n<pre>Enter current password for root (enter for none): Just press the Enter button&#13;\nSet root password? [Y\/n]: Y&#13;\nNew password: your-MariaDB-root-password&#13;\nRe-enter new password: your-MariaDB-root-password&#13;\nRemove anonymous users? [Y\/n]: Y&#13;\nDisallow root login remotely? [Y\/n]: Y&#13;\nRemove test database and access to it? [Y\/n]: Y&#13;\nReload privilege tables now? [Y\/n]: Y&#13;\n<\/pre>\n<p>Once the MariaDB is secured, log in to MariaDB console and create a database for Neos:<\/p>\n<p class=\"command\">mysql -u root -p<\/p>\n<p>Enter your root password, then create a database using the following command:<\/p>\n<p class=\"command\">MariaDB [(none)]&gt;CREATE DATABASE neosdb;<\/p>\n<p>Next, create a username and password for Neos with the following command:<\/p>\n<p class=\"command\">MariaDB [(none)]&gt;CREATE USER &#8216;neosuser&#8217;@&#8217;localhost&#8217; IDENTIFIED BY &#8216;password&#8217;;<\/p>\n<p>Next, grant privileges to the Neos database with the following command:<\/p>\n<p class=\"command\">MariaDB [(none)]&gt;GRANT ALL PRIVILEGES ON neosdb.* TO &#8216;neosuser&#8217;@&#8217;localhost&#8217;;<\/p>\n<p>Now change the character set of your database to utf8 using following query.<\/p>\n<p class=\"command\">MariaDB [(none)]&gt;GALTER DATABASE neos_data charset=utf8;<\/p>\n<p>Next, flush the privileges with the following command:<\/p>\n<p class=\"command\">MariaDB [(none)]&gt;flush privileges;<\/p>\n<p>Finally close the MySQL console:<\/p>\n<p class=\"command\">MariaDB [(none)]&gt;exit;<\/p>\n<p>Once MariaDB is configured, you can proceed to install Neos.<\/p>\n<h2 id=\"install-neosnbspcms\">Install Neos\u00a0CMS<\/h2>\n<p>Before installing Neos, you will need to install Composer to your system. The Composer is a dependency manager for PHP. You can install it by running the following command:<\/p>\n<p class=\"command\">curl -sS https:\/\/getcomposer.org\/installer | php<br \/>sudo mv composer.phar \/usr\/bin\/composer<\/p>\n<p>Next, change the directory to the Apache web root directory and download Neos with the following command:<\/p>\n<p class=\"command\">cd \/var\/www\/html<br \/>sudo composer create-project &#8211;no-dev neos\/neos-base-distribution neos<\/p>\n<p>Above command will download the Neos with all required dependencies.<\/p>\n<p>Next, give proper permissions to the neos directory:<\/p>\n<p class=\"command\">sudo choen -R apache:apache \/var\/www\/html\/neos<br \/>sudo chmod -R 777 \/var\/www\/html\/neos<\/p>\n<p>Next, you will need to create a Virtual host for Neos. You can do this by running the following command:<\/p>\n<p class=\"command\">sudo nano \/etc\/httpd\/conf.d\/neos.conf<\/p>\n<p>Add the following lines:<\/p>\n<pre>&lt;VirtualHost *:80&gt;&#13; ServerAdmin <a href=\"https:\/\/www.howtoforge.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"e48580898d8aa4819c8589948881ca878b89\" target=\"_blank\" rel=\"noopener\">[email\u00a0protected]<\/a>&#13; DocumentRoot \"\/var\/www\/html\/neos\/Web\"&#13; ServerName example.com&#13; ServerAlias www.example.com&#13; &lt;Directory \"\/var\/www\/html\/neos\/Web\"&gt;&#13; Options Indexes FollowSymLinks&#13; AllowOverride All&#13; Order allow,deny&#13; Allow from all&#13; Require all granted&#13; &lt;\/Directory&gt;&#13; ErrorLog \"\/var\/log\/httpd\/neos-error_log\"&#13; CustomLog \"\/var\/log\/httpd\/neos-access_log\" combined&#13;\n&lt;\/VirtualHost&gt;&#13;\n<\/pre>\n<p>Save and close the file, then restart Apache service to apply these changes:<\/p>\n<p class=\"command\">sudo systemctl restart httpd<\/p>\n<h2 id=\"access-neos-web-installation-wizard\">Access Neos Web Installation Wizard<\/h2>\n<p>Before accessing Neos web interface, you will need to allow http and https service for outside access. You can do this by running the following command:<\/p>\n<p class=\"command\">sudo firewall-cmd &#8211;zone=public &#8211;permanent &#8211;add-service=http<br \/>sudo firewall-cmd &#8211;zone=public &#8211;permanent &#8211;add-service=https<\/p>\n<p>Finally, reload the firewalld to apply all the changes:<\/p>\n<p class=\"command\">sudo firewall-cmd &#8211;reload<\/p>\n<p>Now, open your web browser and type the URL http:\/\/example.com, you will be redirected to the setup page as shown below:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page1\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page1.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7.png\" alt=\"Neos Login page\" width=\"550\" height=\"282\" title=\"\"><\/a><\/p>\n<p>You will be asked to enter setup password, you can obtain the setup password by running the following command:<\/p>\n<p class=\"command\">cat \/var\/www\/html\/neos\/Data\/SetupPassword.txt<\/p>\n<p>You should see the setup password as shown below:<\/p>\n<pre>The setup password is: MLGJHlj6apttd you successfully logged in, this file is automatically deleted for security reasons.&#13;\nMake sure to save the setup password for later use.&#13;\n<\/pre>\n<p>Enter the above password in the web interface, then click on the Login button, you should see the following page:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page2\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page2.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-1.png\" alt=\"Neos requirements check\" width=\"550\" height=\"278\" title=\"\"><\/a><\/p>\n<p>Here, make sure that the imagick or gmagick PHP extension has been installed and chosen. Then click on the Next button, you should see the following page:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page3\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page3.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-2.png\" alt=\"Configure the database\" width=\"550\" height=\"297\" title=\"\"><\/a><\/p>\n<p>Here, enter Database username and password which you have created earlier, select database drive, then click on the Next button, you should see the following page:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page4\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page4.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-3.png\" alt=\"Add an administrator account\" width=\"550\" height=\"294\" title=\"\"><\/a><\/p>\n<p>Here, enter your administrator account detail, then click on the Next button, you should see the following page:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page5\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page5.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-4.png\" alt=\"Create a new site\" width=\"550\" height=\"297\" title=\"\"><\/a><\/p>\n<p>Here, enter the site name as you wish, then click on the Next button to start the installation. Once the installation is finished, you should see the following page:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page7\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page7.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-5.png\" alt=\"Neos setup complete\" width=\"550\" height=\"313\" title=\"\"><\/a><\/p>\n<p>Now, click on Go to backend button, you will be redirected to the Neos CMS login page as shown below:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page8\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page8.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-6.png\" alt=\"Neos login screen after installation\" width=\"550\" height=\"325\" title=\"\"><\/a><\/p>\n<p>Enter your administrator credential and click on the Login button, you will be redirected to the Neos CMS dashboard as below:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screenshot-of-neos-page9\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_neo_cms_on_centos_7\/big\/Screenshot-of-neos-page9.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/02\/how-to-install-neos-cms-on-centos-7-7.png\" alt=\"Neos CMS dashboard\" width=\"550\" height=\"284\" title=\"\"><\/a><\/p>\n<h2 id=\"conclusion\">Conclusion<\/h2>\n<p>Congratulations! you have successfully installed and configured Neos CMS in your CentOS 7 server. You can now easily create and host your personal site using Neos CMS. Feel free to ask me if you have any questions.<\/p>\n<div>\n<p><b>Share this page:<\/b><\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Neos is a free and open source content management system written in PHP and uses its own framework flow. Neos CMS provides a customizable, extensible and easy to use web interface to edit web content easily. You don&#8217;t need expensive training or time consuming tutorials on how to operate the CMS. Neos provides a rich [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"class_list":["post-2919","post","type-post","status-publish","format-standard","hentry","category-36"],"_links":{"self":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/2919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/comments?post=2919"}],"version-history":[{"count":0,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/2919\/revisions"}],"wp:attachment":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/media?parent=2919"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/categories?post=2919"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/tags?post=2919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}