How to install Neos CMS on CentOS 7
How to install Neos CMS on CentOS 7
Neos is a free and open source content management system. It is written in PHP and uses its own framework flow. Neos is highly customizable and extensible. Neos allows the user to work with the content as products, events, news or articles. This article will explain the instalallation procedure of Neos CMS on CentOS 7.
Pre-Requisities
- LAMP SETUP
- Apache
- Mysql ( create a database neosdb user protected by password)
- Php version 7 and above with the following extensions
- php71w-mbstring
- php71w-pdo_mysql
- php71w-cli
- php71w-tokenizer
- php71w-pecl-imagick
Installation procedure
The Composer is a dependency manager for PHP. So install and move the composer to another directory by executing the following commands.
[root@linuxhelp1 ~]# curl -sS https://getcomposer.org/installer | php All settings correct for using Composer Downloading... Composer (version 1.4.2) successfully installed to: /root/composer.phar Use it: php composer.phar [root@linuxhelp1 ~]# mv composer.phar /usr/bin/composer
Now switch to the webroot directory of Apache web server and download Neos using following command.
[root@linuxhelp1 ~]# cd /var/www/html/ [root@linuxhelp1 html]# composer create-project --no-dev neos/neos-base-distribution neos Do not run Composer as root/super user! See https://getcomposer.org/root for details Installing neos/neos-base-distribution (3.1.3) - Installing neos/neos-base-distribution (3.1.3): Downloading (100%) Created project in neos Loading composer repositories with package information Updating dependencies Package operations: 61 installs, 0 updates, 0 removals - Installing neos/composer-plugin (2.0.1): Downloading (100%) Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script - Installing ocramius/package-versions (1.1.2): Downloading (100%) Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script - Installing neos/utility-objecthandling (4.1.3): Downloading (100%) Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script - Installing neos/utility-arrays (4.1.3): Downloading (100%) Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script - Installing imagine/imagine (v0.6.3): Downloading (100%) Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script - Installing symfony/yaml (v2.8.25): Downloading (100%) Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script - Installing symfony/polyfill-mbstring (v1.4.0): Downloading (100%) . . . > NeosFlowComposerInstallerScripts::postPackageUpdateAndInstall - Installing neos/demo (3.1.3): Downloading (100%) > NeosFlowComposerInstallerScripts::postPackageUpdateAndInstall Writing lock file Generating autoload files ocramius/package-versions: Generating version class... ocramius/package-versions: ...done generating version class > NeosFlowComposerInstallerScripts::postUpdateAndInstall
Now you will need to create a virtual host configuration file for your web application. Open the configuration file by using the vim editor. Enter the following lines in the configuration file and save the file.
[root@linuxhelp1 ~]# vim /etc/httpd/conf.d/neos.conf
< VirtualHost *:80>
DocumentRoot " /var/www/html/neos/Web"
ServerName 192.168.7.231
ServerAlias linuxhelp1 *.linuxhelp1.com
< Directory " /var/www/html/neos/Web" >
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
Require all granted
< /Directory>
ErrorLog " /var/log/httpd/www.linuxhelp1.com-error_log"
CustomLog " /var/log/httpd/www.linuxhelp1.com-access_log" combined
< /VirtualHost>
Go to the Neos directory and list the contents of the directory by executing the following command.
[root@linuxhelp1 html]# cd neos/ [root@linuxhelp1 neos]# ls -l total 236 drwxr-xr-x. 2 root root 103 Jul 18 17:30 bin drwxr-xr-x. 4 root root 41 Apr 27 21:36 Build -rw-r--r--. 1 root root 1920 Jul 18 17:41 composer.json -rw-r--r--. 1 root root 218445 Jul 18 17:41 composer.lock drwxrwxrwx. 5 root root 126 Jul 18 17:41 Configuration drwxrwxrwx. 2 root root 6 Jul 18 17:41 Data -rwxr-xr-x. 1 root root 426 Jul 18 17:41 flow -rw-r--r--. 1 root root 270 Jul 18 17:41 flow.bat drwxr-xr-x. 7 root root 87 Jul 18 17:40 Packages -rw-r--r--. 1 root root 858 Jul 18 17:41 Readme.rst -rw-r--r--. 1 root root 2609 Jul 18 17:41 Upgrading.rst drwxrwxrwx. 3 root root 76 Jul 18 17:41 Web
Now provide the ownership, read and wire permissions of the application to web server user using the following command.
[root@linuxhelp1 neos]# cd /var/www/html/neos ./flow core:setfilepermissions root apache apache
[root@linuxhelp1 neos]# chown -R apache:apache /var/www/html/neos/Web/
[root@linuxhelp1 neos]# chown 777 /var/www/html/neos/Web/
Restart the Apache service, by executing the restart command.
[root@linuxhelp1 neos]# systemctl restart httpd
Switch over to your browser and provide the target machines’ s IP address along with the following link http://192.168.7.231/setup and run it.
Modify the permission for the following path.
[root@linuxhelp1 neos]# chmod 777 /var/www/html/neos/Packages
Return and refresh the browser. The page shows the ongoing initialising setup process.
After the setup, the login page gets displayed on the screen. Copy the path shown below to open the setup password.
Copy the setup password from the terminal.
[root@linuxhelp1 ~]# cat /var/www/html/neos/Data/SetupPassword.txt
The setup password is:
6GDoPW1M
After you successfully logged in, this file is automatically deleted for security reasons.
Make sure to save the setup password for later use.
Paste the setup password and click Login button to continue.
In next interface, it will check for the setup requirements. The installer will automatically choose imagick module for image manipulation.
Configure your database by providing your database user name, password and db name.
The connection is established on the database that you have created.
The next page prompts for creating administrator account containing the first and last name and user credentials. Enter the required details and click next.
Once the setup is complete, it will automatically show the successfull installation content on the screen.
Now open a new tab in the browser and provide the machine' s IP http://your IP (i.e) http://192.168.7.231 to get the demo page of the site.
The instalallation procedure is complete. It was so simple, Wasn' t it?. Neos CMS can create customized content for different languages.
Ex:
Options -Indexes